页面跳转:
this.$router.push({ path: '/name'})
this.$router.push({ name: 'name'})
都可以后跟query传参 this.$router.push({ name: 'name', query: {id: '1'} })
但是这种传参如果做了页面缓存的话,容易出现多个相同页签
所以建议使用params传参
this.$router.push({ name: 'name', params: row})
页面取传参数据有,当页面已打开,其他页面跳转,在watch监听每次页面跳转
watch: {
'$route'(to, from) {
if (to.name === '制图' && to.params && to.params.id) {
setTimeout(() => {
this.start(to.params)
}, 300)
}
}
},
页面没打开时在mounted里执行
mounted () {
if (this.$route.params && this.$route.params.id) {
setTimeout(() => {
this.start(this.$route.params)
}, 500)
}
},
当然也可以处理一下监听第一次不生效的问题就行
immediate: true
handler() {}