vue.js - 观看 vuejs 上的 props 变化
问题描述
我想在子组件上使用 watch 作为道具,但它不起作用。
这是我的代码:
props: {
searchStore: {
type: Object
}
},
watch: {
searchStore(newValue) {
alert('yolo')
console.log(newValue)
}
不幸的是,它不起作用
我看过这篇文章并尝试了一切,但没有任何效果:VueJs 2.0 - 如何监听“props”的变化
我用 Vue Devtools 检查了我的道具,它正在改变。
在此先感谢社区!
解决方案
基于该代码,它应该可以工作,因此问题可能出在其他地方。您可以发布更多代码吗?
如果你想立即运行,你可以使用immediate
. 这是语法:
watch: {
searchStore: {
immediate: true,
deep: true,
handler(newValue, oldValue) {
}
}
},
该deep: true
设置将深入观察对象内的变化。
当您在父组件中更新此对象的部分内容时,请确保使用 Vue 的$set
功能。
this.$set(this.searchStore, 'myKey', {price: 12.22});
进一步阅读:https ://vuejs.org/v2/guide/reactivity.html#Change-Detection-Caveats
推荐阅读
- cordova - 如何在用户处于屏幕锁定状态(离子)时触发事件?
- swagger - 如何在 APIGateway/Swagger 中将响应 Header Content-Type 设置为 application/xml
- pandas - 使用 sumifs 将列添加到 pandas DF
- linux - Yocto - 如何将空目录添加到文件树
- c++ - 在通知未知线程数的条件变量中避免错误唤醒
- r - 映射功能时出错/当我逐个手动运行它时工作正常;为什么?
- c# - 异步任务控制器未重定向到操作
- python - Python:通过双循环填充列表列表?
- wordpress - 寻找项目经理和报价请求系统的 WordPress 插件
- php - PHP - 管理 curl 输出