gpt4 book ai didi

javascript - 如何监听 'props' 变化

转载 作者:IT老高 更新时间:2023-10-28 13:16:54 24 4
gpt4 key购买 nike

VueJs 2.0 docs我找不到任何可以监听 props 变化的钩子(Hook)。

VueJs 是否有类似 onPropsUpdated() 或类似的钩子(Hook)?

更新

正如@wostex 建议的那样,我尝试watch 我的属性(property),但没有任何改变。然后我意识到我遇到了一个特殊情况:

<template>
<child :my-prop="myProp"></child>
</template>

<script>
export default {
props: ['myProp']
}
</script>

我将父组件接收到的 myProp 传递给 child 组件。然后 watch: {myProp: ...} 不起作用。

最佳答案

您可以watch props 在 props 更改时执行一些代码:

new Vue({
el: '#app',
data: {
text: 'Hello'
},
components: {
'child' : {
template: `<p>{{ myprop }}</p>`,
props: ['myprop'],
watch: {
myprop: function(newVal, oldVal) { // watch it
console.log('Prop changed: ', newVal, ' | was: ', oldVal)
}
}
}
}
});
<script src="https://unpkg.com/vue/dist/vue.js"></script>

<div id="app">
<child :myprop="text"></child>
<button @click="text = 'Another text'">Change text</button>
</div>

关于javascript - 如何监听 'props' 变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44584292/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com