<template>
<div>
<div>
<nuxt-link class="test" :to="{ path: '/testNuxtLink/1' }" :key="'a'">首页</nuxt-link>
<br />
</div>
<div>
<nuxt-link class="test" :to="{ path: '/testNuxtLink/2' }" :key="'b'">2</nuxt-link>
<br />
</div>
<div>
<nuxt-link class="test" :to="{ path: '/testNuxtLink/3' }" :key="'c'">3</nuxt-link>
</div>
<div>
<nuxt-link class="test" :to="{ path: '/testNuxtLink/4' }" :key="'d'">4</nuxt-link>
</div>
<p>this routeParam: {{ routeParams }}</p>
</div>
</template>
<script>
export default {
data() {
return {
routeParams: this.$route.params
};
},
watch: {
$route: {
handler: function(val, oldVal){
console.log(val.params);
Object.assign(this.routeParams, val.params)
},
// 深度观察监听
deep: true
}
}
};
</script>
当分别点击2,3,4,首页时,会有如下输出
{0: "/2"}
testNuxtLink.vue?f05a:33 {0: "/2"}
testNuxtLink.vue?f05a:33 {0: "/3"}
testNuxtLink.vue?f05a:33 {0: "/3"}
testNuxtLink.vue?f05a:33 {0: "/3"}
testNuxtLink.vue?f05a:33 {0: "/3"}
testNuxtLink.vue?f05a:33 {0: "/4"}
testNuxtLink.vue?f05a:33 {0: "/4"}
testNuxtLink.vue?f05a:33 {0: "/4"}
testNuxtLink.vue?f05a:33 {0: "/4"}
testNuxtLink.vue?f05a:33 {0: "/4"}
testNuxtLink.vue?f05a:33 {0: "/4"}
testNuxtLink.vue?f05a:33 {0: "/1"}
testNuxtLink.vue?f05a:33 {0: "/1"}
testNuxtLink.vue?f05a:33 {0: "/1"}
testNuxtLink.vue?f05a:33 {0: "/1"}
testNuxtLink.vue?f05a:33 {0: "/1"}
testNuxtLink.vue?f05a:33 {0: "/1"}
testNuxtLink.vue?f05a:33 {0: "/1"}
testNuxtLink.vue?f05a:33 {0: "/1"}