vue 监听 props
时间: 2023-09-27 17:04:55 浏览: 90
vue 子组件watch监听不到prop的解决
在 Vue 中,可以通过 `props` 来传递数据给子组件。如果需要在子组件中监控这些 `props` 的变化,可以使用 `watch`。具体步骤如下:
1. 在子组件的 `props` 中声明需要监控的属性,例如:
```javascript
props: {
value: {
type: String,
default: ''
}
}
```
2. 在子组件中使用 `watch` 监控该属性的变化,例如:
```javascript
watch: {
value: function(newValue, oldValue) {
console.log('value changed:', oldValue, '->', newValue)
}
}
```
这样,当父组件传递给子组件的 `value` 属性发生变化时,子组件会自动触发 `watch` 中的回调函数。
需要注意的是,父组件修改 `props` 中的属性值会触发一个警告,因为 Vue 中的数据流是单向的,父组件应该通过事件来与子组件通信,而不是直接修改 `props`。如果确实需要在子组件中修改 `props`,可以通过 `sync` 修饰符来实现双向绑定。
阅读全文