vue this.$router.go(-1); 或者 this.$router.back() 返回时怎么带参数

1、声明一个 空的Vue模块 goBackEntity


import Vue from 'vue'
 
/**
 * 定义空的vue实例,作为 goBackEntity实现非父子组件之间的通信(vue2.x中去掉了broadcast)
 */
var goBackEntity = new Vue({});
export default goBackEntity;

2、在需要传参数的页面

import eventBus from '../../utils/goBackEntity.js';
 
goBack(value){
  eventBus.$emit('id',value);  //传递一个map,id是key,value是value
  this.$router.go(-1);
},

3、在接收页面

 import eventBus from '../../utils/goBackEntity.js';
 
 activated(){
  //根据key名获取传递回来的参数,data就是map中对应的key'id'的值
  goBackEntity.$on('id', function(data){
    console.log(data,"data");
  }.bind(this));
},

 

你可能感兴趣的:(vue,vue,前端,路由返回带参)