vue 页面相互传值

由于刚学习vue,很多地方在官网上面看的不是很明白
现有这样一个需求:

当点击button时,跳转到另一个页面,另一个页面内容为上个页面的数据详细信息



当前页面已经获取到数据,想把数据传到另一个页面

请问如何通过路由跳转的方式来进行页面之间的相互传值
  planDetail(personid, plan, relation, productProperty) {
        let param = {
          personId: personid,
          productCode: plan
        };
        console.log("入参", param);
        this.$http.postBody("/1/111", param, result => {
          console.log(result);
          this.productDetail = result.body.rows;
          if (relation == "1") {
            this.detailTitle =
              productProperty == "1" ? "都市客从" : "方法 " + "吃的是草";
          } else {
            this.detailTitle =
              productProperty == "1" ? "的是" : "的的" + "的方式vs";
          }
          this.familyShow = true;
                          this.$router.push({name: 'employeeplan', query:param})

        });
阅读 14k
2 个回答

query 和 params 需要在router里面做配置。

新手上路,请多包涵

PolarisJack说的没错。

        /* 父组件 */
        /** 
        * 在index.js中的router注册后
        * {
        * path: '/....',
        * name: 'aaa',
        * component: AAA
        * } 
        */
        this.$router.push({
                name: 'aaa',
                params: {
                        nameYouWant: name1,
                        nameYouWant2: name2
                }
        })
        
        /* 子组件 */
        // 子组件此处是$route, 没有r, 此处输出name1
        let thingsWeGet = this.$route.params.nameYouWant
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏