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 相关文章推荐
JavaScript 不只是脚本
May 30 Javascript
在新窗口打开超链接的方法小结
Apr 14 Javascript
javascript实现修改微信分享的标题内容等
Dec 11 Javascript
js实现jquery的offset()方法实例
Jan 10 Javascript
详解JavaScript对Date对象的操作问题(生成一个倒数7天的数组)
Oct 01 Javascript
JS获取数组最大值、最小值及长度的方法
Nov 24 Javascript
JavaScript缓冲运动实现方法(2则示例)
Jan 08 Javascript
EasyUI闪屏EasyUI页面加载提示(原理+代码+效果图)
Feb 21 Javascript
jQuery实现简单的网页换肤效果示例
Sep 18 Javascript
jQuery中map函数的两种方式
Apr 07 jQuery
Angular学习教程之RouterLink花式跳转
May 03 Javascript
Element MessageBox弹框的具体使用
Jul 27 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访问MYSQL数据库封装类(附函数说明)
2010/12/04 PHP
解析PHP实现多进程并行执行脚本
2013/06/18 PHP
2014最热门的24个php类库汇总
2014/12/18 PHP
php实现判断访问来路是否为搜索引擎机器人的方法
2015/04/15 PHP
php生成带logo二维码方法小结
2016/04/08 PHP
php版微信js-sdk支付接口类用法示例
2016/10/12 PHP
php字符串过滤strip_tags()函数用法实例分析
2019/06/24 PHP
JQuery中关于jquery.js与jquery.min.js的比较探讨
2013/05/15 Javascript
javascript实现根据3原色制作颜色选择器的方法
2015/07/17 Javascript
BootStrap中的表单大全
2016/09/07 Javascript
[Bootstrap-插件使用]Jcrop+fileinput组合实现头像上传功能实例代码
2016/12/20 Javascript
JavaScript 事件对内存和性能的影响
2017/01/22 Javascript
用Nodejs搭建服务器访问html、css、JS等静态资源文件
2017/04/28 NodeJs
微信小程序request出现400的问题解决办法
2017/05/23 Javascript
微信小程序静默登录的实现代码
2020/01/08 Javascript
jquery插件懒加载的示例
2020/10/24 jQuery
vue-cli3配置favicon.ico和title的流程
2020/10/27 Javascript
python简单实现刷新智联简历
2016/03/30 Python
python爬虫框架talonspider简单介绍
2017/06/09 Python
python处理按钮消息的实例详解
2017/07/11 Python
python logging日志模块的详解
2017/10/29 Python
python:pandas合并csv文件的方法(图书数据集成)
2018/04/12 Python
python 寻找list中最大元素对应的索引方法
2018/06/28 Python
使用Jupyter notebooks上传文件夹或大量数据到服务器
2020/04/14 Python
css3实现背景图片拉伸效果像桌面壁纸一样
2013/08/19 HTML / CSS
行政人员岗位职责
2013/12/08 职场文书
致铅球运动员广播稿精选
2014/01/12 职场文书
普通员工辞职信
2014/01/17 职场文书
农民工工资承诺书范文
2014/03/31 职场文书
电子商务专业应届毕业生求职信
2014/06/21 职场文书
药品营销专业毕业生自荐信
2014/07/02 职场文书
2014年项目经理工作总结
2014/11/24 职场文书
幼儿园综治宣传月活动总结
2015/05/07 职场文书
PHP遍历数组的6种方式总结
2021/11/17 PHP
使用Java去实现超市会员管理系统
2022/03/18 Java/Android
Python获取字典中某个key的value
2022/04/13 Python