の中にVueJs 2.0 ドキュメント変更をリッスンするフックが見つかりませんprops
。
VueJs にはこのようなフックonPropsUpdated()
や類似のフックはありますか?
アップデート
@wostex が示唆したように、自分のプロパティを試してみましたwatch
が、何も変わりませんでした。その後、特別なケースがあることに気付きました。
<template>
<child :my-prop="myProp"></child>
</template>
<script>
export default {
props: ['myProp']
}
</script>
myProp
親コンポーネントが受信したものをコンポーネントに渡していますchild
。その後、はwatch: {myProp: ...}
動作しません。
ベストアンサー1
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@2/dist/vue.min.js"></script>
<div id="app">
<child :myprop="text"></child>
<button @click="text = 'Another text'">Change text</button>
</div>