vue的路由映射问题及解决方案


Posted in Javascript onOctober 14, 2019

今天在项目中遇到了一个问题,明明在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') },
];

然后整个文件路径如下图所示:

vue的路由映射问题及解决方案

然后,路径啥的都有,结果死活进入不了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
  }
 ]
})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery ctrl+Enter shift+Enter实现代码
Feb 07 Javascript
javascript一个无懈可击的实例化XMLHttpRequest的方法
Oct 13 Javascript
使用Math.floor与Math.random取随机整数的方法详解
May 07 Javascript
js实现倒计时时钟的示例代码
Dec 17 Javascript
js判断为空Null与字符串为空简写方法
Feb 24 Javascript
jQuery性能优化技巧分析
Feb 20 Javascript
JavaScript调用浏览器打印功能实例分析
Jul 17 Javascript
纯css实现窗户玻璃雨滴逼真效果
Aug 23 Javascript
详解JavaScript编程中正则表达式的使用
Oct 25 Javascript
JS区分Object与Aarry的六种方法总结
Feb 27 Javascript
微信小程序wx.previewImage预览图片实例详解
Dec 07 Javascript
vue-列表下详情的展开与折叠案例
Jul 28 Javascript
浅谈Vue为什么不能检测数组变动
Oct 14 #Javascript
为什么Vue3.0使用Proxy实现数据监听(defineProperty表示不背这个锅)
Oct 14 #Javascript
Vue3.0中的monorepo管理模式的实现
Oct 14 #Javascript
Vue3 源码导读(推荐)
Oct 14 #Javascript
基于JS实现父组件的请求服务过程解析
Oct 14 #Javascript
JavaScript this在函数中的指向及实例详解
Oct 14 #Javascript
vue循环数组改变点击文字的颜色
Oct 14 #Javascript
You might like
PHP中is_file不能替代file_exists的理由
2014/03/04 PHP
CI框架装载器Loader.php源码分析
2014/11/04 PHP
php ActiveMQ的安装与使用方法图文教程
2020/02/23 PHP
jquery 图片Silhouette Fadeins渐显效果
2010/02/07 Javascript
JavaScript中的property和attribute介绍
2011/12/26 Javascript
JavaScript instanceof 的使用方法示例介绍
2013/10/23 Javascript
基于Jquery实现键盘按键监听
2014/05/11 Javascript
AngularJS内置指令
2015/02/04 Javascript
浅谈Sublime Text 3运行JavaScript控制台
2016/06/06 Javascript
jquery层级选择器的实现(匹配后代元素div)
2016/09/05 Javascript
BootStrap实现邮件列表的分页和模态框添加邮件的功能
2016/10/13 Javascript
JavaScript控制输入框中只能输入中文、数字和英文的方法【基于正则实现】
2017/03/03 Javascript
微信小程序 弹窗自定义实例代码
2017/03/08 Javascript
实例讲解DataTables固定表格宽度(设置横向滚动条)
2017/07/11 Javascript
基于JS递归函数细化认识及实用实例(推荐)
2017/08/07 Javascript
使用Vue写一个datepicker的示例
2018/01/27 Javascript
Vue中通过Vue.extend动态创建实例的方法
2019/08/13 Javascript
javascript写一个ajax自动拦截并下载数据代码实例
2019/09/07 Javascript
Nautil 中使用双向数据绑定的实现
2019/10/02 Javascript
vue 指令和过滤器的基本使用(品牌管理案例)
2019/11/04 Javascript
JS实现轮播图效果
2020/01/11 Javascript
VSCode搭建React Native环境
2020/05/07 Javascript
Python实现简单HTML表格解析的方法
2015/06/15 Python
Python连接SQLServer2000的方法详解
2017/04/19 Python
python实现批量按比例缩放图片效果
2018/03/30 Python
python实现批量注册网站用户的示例
2019/02/22 Python
Pandas之缺失数据的实现
2021/01/06 Python
美国领先的家庭智能音响系统品牌:Sonos
2018/07/20 全球购物
客户服务经理岗位职责
2014/01/29 职场文书
民族团结先进个人材料
2014/02/05 职场文书
餐厅经理岗位职责范本
2014/02/17 职场文书
环保倡议书格式范文
2014/05/14 职场文书
2015年五四青年节活动总结
2015/02/10 职场文书
考生诚信考试承诺书
2015/04/29 职场文书
原来闭幕词是这样写的呀!
2019/07/01 职场文书
Oracle设置DB、监听和EM开机启动的方法
2021/04/25 Oracle