vuejs2.0 提示Cannot read property 'push' of undefined

在进行手动访问页面的时候,出现这种报错,于是进行路径的检查。

app.vue结构:

  <div id="app">
    <m-header>m-header>
     <router-view>router-view>
  div>

m-header.vue文件:


  methods: {
    // 这是是封装的手动访问链接的事件
    // surf() {
    //   var _this = this;
    //   // console.log(_this);
    //   setTimeout(function() {
    //     //   每隔一段时间访问一个路由
    //       _this.$router.push('/message');
    //     setTimeout(function() {
    //       //   每隔一段时间访问一个路由
    //       _this.$router.push({name:'contract',params:{name:'黄华华'}});
    //     }, 2000);
    //   }, 2000);
    // }
  }

发现没有声明this 指向的时候,this并不是指向的vue的,所以没有找到surf这个方法,自然就没有push这个属性了所以就必须 要设置 this的指向,指向当前的方法,所以跳转 路由的时候才不会报错。

你可能感兴趣的:(vue2.0)