vue封装后退函数报错?

后退是一个常用的功能,所以我把他封装成一个全局函数

//assetes/global.js
import Vue from 'vue'
import Router from "vue-router";
Vue.use(Router)

export default({
    //后退
    back:function(){
        this.$router.go(-1); //报错
    },
})

报错信息是Cannot read property 'go' of undefined

于是我换种写法:

Router.$router.go(-1);

还是一样报错,该怎么解决呀?

阅读 1.8k
2 个回答
//在main.js中定义一个全局变量VUE
window.VUE = new Vue({
  el: '#app',
  router,
  store,
  components: { App },
  template: '<App/>'
})
//在你的assetes/global.js中的back方法可以写成
VUE.$router.go(-1);

要引用你项目通过new实例化的那个Router才能调用方法

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题