vue 页面调用另一个页面的方法

由于开发需要,我需要在登录成功请求成功后,调用自定义组件页面的一个点击事件方法,让方法立即执行,经过思考后,想出了解决方法,特此记录一下

页面关系:登录页跳转到主页,主页有调用自定义组件

页面(登录页) 登录页的亮点主要就是在这里,在跳转成功的时候,携带一个布尔值到主页去

  // 开始,请求接口
    async start() {
      const res = await StartExaminationApi({ //此页面为登录页
        data: [],
        s: "200",
      });
    
      if (res.msg == "success") {
        this.$message({
          message: "考试开始,祝您成功!",
          type: "success",
        });
        this.$router.push({ name: "Dashboard", params: { start: true } });
     //登录页的亮点主要就是在这里,在跳转成功的时候,携带一个布尔值到主页去
      }
   
    },
  },

主页:调用了自定义组件方法

<template>
  <div class="box">
    <!-- 使用自定义组件,并添加一个ref-->
    <mySetting ref="mysetting"></mySetting>
 </div>
</template>
<script>
  mounted() {
    if (this.$route.params.start) {
      //判断登录后,点击开始后,是否传布尔值过来,如果布尔值true存在,就调用子组件的方法startCount
      this.$refs["mysetting"].startCount();
    }
  },
</script>

自定义组件:

<script> 
 startCount() {
      this.$refs.countdown.countTime();//此为自定义组件方法,需要跳转成功后,立即执行该方法
  
    },
</script>

猜你喜欢

转载自blog.csdn.net/m0_59023970/article/details/125319882