为了账号安全,请及时绑定邮箱和手机立即绑定

vue router使用了异步加载后无法直接通过url访问

vue router使用了异步加载后无法直接通过url访问

富国沪深 2019-05-24 19:16:24
路由如下:exportdefault[{path:'/',component:require('./views/Root.vue'),children:[{path:'/',component:require('./views/index.vue')},{path:'todos',component:require('./views/todos/parent.vue'),children:[{path:'create',component:()=>import('./views/todos/index.vue')}]},{path:'users',component:require('./views/users/parent.vue'),children:[{path:'create',component:require('./views/users/index.vue')}]}]}];问题:当我在浏览器输入xxx.dev/todos/create时,浏览器会跳转到xxx.dev,然后页面空白,需要刷新一下才会显示正常首页。而访问xxx.dev/users/create则能直接显示用户列表页面。那么,我需要如何修改代码才能让todos/create也能像users/create那样能直接在浏览器输入网址访问呢?vue=>2.4.2webpack=>3.4.1发现个问题,就是我直接访问xxx.dev/todos/create的时候,浏览器访问的是xxx.dev/todos/0.js,而实际上这个文件在xxx.dev/0.js,直接点击导航访问不会出现这个问题。。。
查看完整描述

2 回答

?
饮歌长啸

TA贡献1951条经验 获得超3个赞

尝试把下面代码中的import改为require
{
path:'todos',
component:()=>import('./views/todos/index.vue')
}
建议把main.js,router.js和./views/todos/index.vue都贴出来最好
看下这个问题require和import区别
                            
查看完整回答
反对 回复 2019-05-24
  • 2 回答
  • 0 关注
  • 2223 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信