vue-router,打开新页面路由跳转
方法
传参
let { href } = this.$router.resolve({
path: '/path',
query:{
id: id ,
year: year
}
})
window.open(href, '_blank');
获取参数
mounted(){
this.data = this.$route.query.id
console.log(this.data)
},
router.resolve
router.resolve方法返回路由地址的标准化版本。
resolve接收两个参数: rawLocation、currentLocation(可选)。
- 其中rawLocation是待转换的路由,rawLocation可以是个对象也可以是个字符串。
- currentLocation不传默认是currentRoute。
参考:
https://blog.csdn.net/qq_33635385/article/details/125175571?spm=1001.2014.3001.5502
window.open()的三个参数
window.open("要跳转的网址", "跳转形式或者名字", "给出窗口添加新的的属性(字符串形式)");
例子:
window.open("###", "_blank","height=600, width=600, top=50, left=50, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no");
第一个参数为地址: url
第二个参数为 打开方式或者窗口命名
- 在当前窗口打开百度,并且使URL地址出现在搜索栏中.
window.open(“http://www.baidu.com/”, “_search”);
window.open(“http://www.baidu.com/”, “_self”); - 在一个新的窗口打开百度
window.open(“http://www.baidu.com/”, “_blank”); - 打开一个新的窗口,并命名为"hello"
window.open(“”, “hello”);
另外, open函数的第二个参数还有几种选择:
_top : 如果页面上有framesets,则url会取代framesets的最顶层, 即, 如果没有framesets, 则效果等同于_self.
_parent: url所指向的页面加载到当前frame的父亲, 如果没有则效果等同于_self.
_media : url所指向的页面加载到Media Bar所包含的HTML代码区域中.如果没有Media Bar则加到本身.
第三个参数(可选): 添加其它的东西在新的窗口上
channelmode : yes|no|1|0 (窗口显示为剧场模式[全屏幕显示当前网页, 包括工具栏等],或频道模式[一般显示]).
directories : yes|no|1|0 (是否添加目录按钮, 比如在IE下可能会有一个"链接"这样的按钮在最上面出现)
fullscreen : yes|no|1|0 (使浏览器处理全屏幕模式, 并隐藏标题栏和菜单等)
menubar : yes|no|1|0 (是否显示浏览器默认的菜单栏)
resizeable : yes|no|1|0 (窗口是否可调整大小)
scrollbars : yes|no|1|0 (是否允许水平或垂直滑动条)
titlebar : yes|no|1|0 (是否添加一个标题栏)
toolbar : yes|no|1|0 (是否添加浏览器默认的工具栏)
status : yes|no|1|0 (是否显示状态栏)
location : yes|no|1|0 (是否显示搜索栏)
copyhistory : yes|no|1|0 (似乎已经废弃, 如果只要工具栏显示, 历史按钮就会显示出来)
height : 窗口的高度, 最小值为100像素
width : 窗口的宽度, 最小值为100像素
left : 窗口的最左边相对于屏幕的距离