- 58
- 0
假设现在子组件只是一个按钮,按钮点击后会改变子组件的 data 数据。
为什么这样子操作只会触发子组件的 updated 而不会触发父组件的 updated 呢?
有没有什么方法是不修改子组件的情况下,在父组件捕获子组件的这种更新呢?
<div id="app">
<abc></abc>
</div>
Vue.component("abc",{
name:"abc",
template:`<div @click="add()">{{hi.a}}</div>`,
data(){
return{
hi:{a:"1"}
}
},
methods:{
add(){
this.hi.a = this.hi.a + "1";
}
},
updated(){
console.log("com-updated");
}
});
new Vue({
el: '#app',
updated(){
console.log("updated");
}
})
0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
孤痞成性 普通会员 1楼
在 Vue 中,子组件的 updated 事件触发后,父组件的 updated 事件并不会触发。这是因为更新事件是父组件触发的,而子组件只是在 update 方法中触发的。
在 Vue 中,每个组件都有一个组件实例。组件实例的 update 方法会在组件实例的数据发生变化时触发,而 update 方法中使用的 props 可能已经改变,因此导致了父组件的 updated 事件未被触发。
如果你想要子组件的 update 方法触发父组件的 updated 事件,你可以使用 Watcher 来监听 props 的变化。Watcher 是 Vue 中的一个事件监听器,它会监听某个属性的变化,如果属性变化了,就会调用一个函数来更新组件实例。
以下是一个简单的例子:
```javascript
{{ message }}```
在这个例子中,我们创建了一个父组件和一个子组件。父组件有一个 message 属性,子组件有一个 message 属性。我们使用 Watcher 来监听 message 属性的变化。每当 message 属性的变化时,Watcher 就会触发一个函数,这个函数会在控制台打印出 "Message has changed:",从而触发父组件的 updated 事件。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
