路由传参,path和query的刷新报错js文件丢失
日常的路由跳转,基本都会用到传参,有两种方式:path + query, name + params
常用的写法:
this.$router.push({ path: 'proDetail',query:{id:query.id,from:this.menuName,fromPath:'proList'}});
或者
this.$router.push({ name: 'proDetail',params:{id:query.id,from:this.menuName,fromPath:'proList'}});
甚至一般情况下,name + query ,path + params也都没问题。
但有一种情况要注意:使用了动态路由带参数
{
path: '/proList/:id',
name: 'proList',
component: resolve => require(['../components/proList'], resolve)
},
这个时候需要固定的写法,定义了path带参数,那么如果还是用query话,刷新会有报错,因为需要你提供参数,这里为什么写name呢,因为path的话,它是动态的了 /proList/:id 。
this.$router.push({ name: 'proDetail',params:{id:query.id,from:this.menuName,fromPath:'proList'}});
第二种情况:query + path一起用。刷新页面也会有报错。报错基本是下面这个的,资源路径加载会出问题。暂时原因还在找,网上没找到合适的说法。

总结:以上情况,在前进路由,路由倒退,日常跳转都没有任何问题,页面一刷新就报错这个,然后导致iconfont图片都没了,加密的js也不能用。
1:定义了path带参数,就要使用params传参
2:query + params不能同时使用。
最后:如果有路过的大神,希望能给个答案!感激不尽
路由传参,path和query的刷新报错js文件丢失的更多相关文章
- vue 路由传参 params 与 query两种方式的区别
初学vue的时候,不知道如何在方法中跳转界面并传参,百度过后,了解到两种方式,params 与 query.然后,错误就这么来了: router文件下index.js里面,是这么定义路由的: { p ...
- 使用路由传参时,query与params的区别!
query 1:参数会在地址栏显示 2:参数不需要在路由的path后接:args1/:args2 3:获取参数用this.$route.query.args1 params 1:参数需要在路由的pat ...
- vue路由传参的三种方式以及解决vue路由传参页面刷新参数丢失问题
最近项目中涉及到跨页面传参数和后台进行数据交互,看到需求之后第一反应就是用路由传参来解决:Vue中给我们提供了三种路由传参方式,下面我们一个一个的来看一下: 方法一:params传参: this.$r ...
- vue路由传参刷新丢失
没有系统学习过vue,以前使用路由传参都是直接this.$router.push({name:'main',params:{'id': 123}})的,没有在路由定义中配置参数,如下: router: ...
- Vue路由传参及传参后刷新导致参数消失处理
项目功能需要,要从列表页跳转到第三方提供的URL上(这里第三方页面我是通过iframe引入在详情页,目的是点击返回时可以通过keepAlive让列表页不刷新,如果不通过iframe直接跳第三方链接,那 ...
- vue 路由传参中刷新页面参数丢失 及传参的几种方式?
在页面跳转中,我通过路由传参,结果发现页面参数丢失了.路径返回了根目录.... 1. 先说下路由传参的几种方式吧? 比如:<div v-for="item in items" ...
- vue路由传参页面刷新参数丢失问题解决方案
最近项目中涉及到跨页面传参数和后台进行数据交互,看到需求之后第一反应就是用路由传参来解决:Vue中给我们提供了三种路由传参方式,下面我们一个一个的来看一下: 方法一:params传参: this.$r ...
- vue路由传参的三种方式区别(params,query)
最近在做一个项目涉及到列表到详情页的参数的传递,网上搜索一下路由传参,结合自己的写法找到一种适合自己的,不过也对三种写法都有了了解,在此记录一下 <ul class="table_in ...
- 路由传参 query 和 params
vue路由传参分为两种情况: 一.query和params传参的区别: 1.query传参显示参数,params传参不显示参数,params相对于query来说较安全一点. 2.取值方法也有不同:qu ...
随机推荐
- 案例51-crm练习新增客户使用数据字典和ajax
1 案例效果 2 使用ajax加载数据字典下拉选-后台部分 1 domain部分-BaseDict package www.test.domain; public class BaseDict { / ...
- linux 编译安装php7
1.下载php7安装包: php7 2.解压 .tar.gzcd php-7.1.5 3.可能需要的扩展 yum install libmcrypt libmcrypt-devel mcrypt mh ...
- Oracle错误——ORA-03113:通信通道的文件结尾
请参考:http://blog.csdn.net/zwk626542417/article/details/39667999 今天跟往常一样,登陆PL/SQL,确登陆失败,出现一个错误“ORA-010 ...
- synchronized + volatile + ThreadLocal
线程的共享 synchronized + volatile + ThreadLocal <1> synchronized 锁住的是对象,当用它来锁住一个类时,实际上也是锁的一个对象. ...
- logback配置说明
我觉得对于logback大家不太明白的有:过滤器.logger和root以及其中的一些属性的关系.其他的应该不是多迷糊,所以我就主要说说这几个的关系,并且为了清晰我只说控制台日志,写到文件的日志配置大 ...
- 关于objc.io
推荐一个特别棒的项目:objc.io 原版地址:http://www.objc.io/ 中国版地址:http://objccn.io/ 欢迎大家前去学习,如果你有不错的东西,也欢迎跟帖分享.
- 处理http请求时,如何处理url的参数
1.@PathVariable 获取url中的数据 这种写法显得简洁 也可以把参数写在前面 @RequestParam 获取请求参数的值 适合传统的get提交参数的获取 给参数id设置一个默认值 不传 ...
- pymongo模块
import pymongo # 创建与MongoDB服务器的连接 mongoclient = pymongo.MongoClient(host='127.0.0.1', port=27017) # ...
- Angular搭建脚手架
1.安装CLI: cnpm install -g @angular/cli //卸载: npm uninstall -g @angular/cli npm cache clean 2.检测是否成功 ...
- C++ Knowledge series overloading
What does the compiler behind our programming? Overloading in C++ Override all of overloaded functio ...