时间:2021-05-26
今天在项目中遇到了一个问题,明明在Router文件夹下的路由js映射文件中,配置好了,如下:
// 生日贺卡 { path: 'birthdayRemind', component: load('@/components/app/birthdayRemind/BirthdayRemind')}然后我是通过进入home页面,点击一个图标,进入到这个生日贺卡页面,路径如下:
const tmpConfig = [ { funcName: '生日贺卡', link: '/home/0/work/birthdayRemind/BirthdayRemind', icon: require('../../assets/img/home/toolbar1.png') },];然后整个文件路径如下图所示:
然后,路径啥的都有,结果死活进入不了BirthdayRemind.vue页面
解决问题
搞了挺久,最后同事告诉我,原来是图标 link 属性的路径写错了,正确是这样写的:
const tmpConfig = [ { funcName: '生日贺卡', link: '/home/0/work/birthdayRemind', icon: require('../../assets/img/home/toolbar1.png') }, { funcName: '应用中心', link: '/home/0/work/appCenter', icon: require('../../assets/img/home/toolbar1.png') },];是不是觉得很奇怪,明明具体的文件路径为:link: ' /home /0 / work / birthdayRemind / BirthdayRemind ',却报错,而写该文件的上一层文件夹路径(link: '/ home/0/work/birthdayRemind),却写对了?
分析问题
我想了一下,其实还是蛮有道理的,因为在Router的路由映射js当中,Router首先是从path属性开始查找,找到对应的path,就会load具体的路径。例如上面的 link: '/home/0/work/birthdayRemind',Router就会在vue的路由映射表中,查找path,path: '/birthdayRemind' 的名字映射,然后就会自动load出具体的vue地址,然后就渲染出来。
而错误的写法是: localhost:8080 / birthdayRemind / BirthdayRemind , 很明显,路由映射表中,没有一个path: '/ birthdayRemind / BirthdayRemind' ,所有就渲染不出来了对应的vue
因为工作项目的不同,这里的/home/o/work/ 就相当于 localhost:8080/ ,相当于跟路径。
总结:
以后如果想要Router查找到相应的vue路径,只需要 http://localhost:8080 + path ,就能找到并渲染出相应的页面了。
ps:这里的path是在路由映射表中写的,格式如下:
import Rank from 'components/rank/rank' export default new Router({ routes: [ // { // path: '/', // name: 'Hello', // component: Hello // }, { path: '/', redirect: '/recommend' }, { path: '/rank', component: Rank } ]})以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Vue-router是伴随着Vue框架出现的路由系统,它也是公认的一种优秀的路由解决方案。在使用Vue-router时候,我们常常会使用其自带的路径跳转组件Li
Vue-router是伴随着Vue框架出现的路由系统,它也是公认的一种优秀的路由解决方案。在使用Vue-router时候,我们常常会使用其自带的路径跳转组件Li
前言企业运营后台页面很多,路由如若不区分模块化配置,所有路由挤在同一个文件将不好维护,所以路由的配置也要模块化分享两个解决方案——Vue路由配置的模块化(Pla
问题:在使用vue-cli3搭建项目之后,发现修改.vue文件里面的内容之后,页面不会自动刷新。解决方案:只需要在vue.config.js文件中配置一下就可以
问题现在有多个字典或者映射,你想将它们从逻辑上合并为一个单一的映射后执行某些操作,比如查找值或者检查某些键是否存在。解决方案加入你有如下两个字典:a={'x':