原创文章,转载请说明!拒绝八股文解释,以最通俗易懂的方式解决需求。
个人博客:https://timebk.cn/ 开源地址:Github
前言
只是简单记录一下,简单易懂,能快速解决需求即可,没有深入探索
正文
打开方式
router.push 只能当前窗口打开
router.resolve 结合 window.open 可以新窗口打开
参数传递
router.push 支持query和params
router.resolve 只支持query,若需地址栏参数不可见,需结合localStorage或第三方插件保存
示例
router.push
// 地址栏里带参
this.$router.push({
path: '这里是path',
query: {
a: 1,
},
});
// 地址栏里不带参
this.$router.push({
name: '这里是name',
params: {
a: 1,
},
});
router.resolve
// 地址栏里带参
let data = this.$router.resolve({
path: "/channel_sms",// 或者 name: 'channel_sms',
query: {
a: 1,
},
});
window.open(data.href, '_blank');
// 地址栏里不带参
let data = this.$router.resolve({
name: 'channel_sms',
});
localStorage.setItem('a', 1);
// 然后跳转页接收 localStorage.getItem('a');
后言
感谢阅读,转载请说明。