Vue路由器两次更新URl,一次调用push()

时间:2018-11-23 11:45:51

标签: vue.js vue-router

this.$router.push({ path: '/upload'});

将浏览器URL更新为...#/上传正常。但是

this.$router.push( '/edit/file/4' );

在更新为'...#/'之前,在地址栏中简短地闪烁预期的URL-转换已成功完成,因为我的编辑视图已加载,但我必须按两次(一次到/ edit / file / 4,一次恢复到我以前的状态)。

为什么?怎样使它按预期工作?

我的路由器路由是

routes: [
    {
      path: '/',
      name: 'home',
      component: Home,
      children:[
        {
          name: 'upload',
          path:'upload',
          component:HomeUpload
        },

        {
          name: 'edit-file',
          path: 'edit/file/:file_id',
          component:HomeUpload,
          props: true // or field_id prop not filled in
        }
      ]
    }
  ]

1 个答案:

答案 0 :(得分:1)

因为模板具有

<a @click="edit(page)" href="#">Edit</a></td>

代替

<a @click="edit(page)">Edit</a></td>