我有一个组件
<template>somecode</template>
<script>
export default {
name: 'Card',
created() {
axios.get(apiObjUrl)
somecode
})
}
</script>
Run Code Online (Sandbox Code Playgroud)
这是我的网址:http : //127.0.0.1 : 8080/#/card/12
但我有一个问题:
当我像这样使用路由器链接时:
<router-link to="/card/155"> card 155</router-link>
Run Code Online (Sandbox Code Playgroud)
我的网址更改:http : //127.0.0.1 : 8080/#/card/155
但该created()方法不会被解雇。所以我不会向 api 发出新的 xhr 请求,数据也不会改变我该怎么办?
作为替代方案,您可以像这样设置一个 关键属性<router-view>:
<router-view :key="$route.fullPath"></router-view>
Run Code Online (Sandbox Code Playgroud)
就像<router-view>组件本身一样,唯一键强制替换组件而不是重用它。所以你可以使用生命周期钩子。
看小提琴
| 归档时间: |
|
| 查看次数: |
1131 次 |
| 最近记录: |