計算プロパティをDOMプロパティの変更に対応させるには、どのような方法が推奨されますか?* after * renderを更新するDOMに基づく計算されたプロパティ
私のシナリオは次のとおりです。
私は、DOMにある値(例えば、要素の幅)に基づいて計算されたプロパティを持っています。
ビューの更新の結果、DOMプロパティが変更されます。
これで、計算されたプロパティはDOMの変更の結果として更新されません。
私はこの問題を説明するためにsimplified exampleのcodepenを作成しました。この例では、 'updated'フックで変更される 'ダミー'プロパティを使用して計算されたプロパティを強制的に更新しています。
updated(){
console.log('updated')
this.dummy= this.dummy * -1
},
computed:{
width(){
console.log('computed')
const w = (this.$refs.square || {}).clientWidth
return w + this.dummy * 0
}
}
私は、DOMの変化に反応し、プロパティの更新、およびプロパティの変更に反応DOMの更新場合は、よく、それに終わりはないであろうことを理解してください。
だから、2つの同期を保つためのクリーンな方法はありますか?
ありがとうございました
計算されたプロパティを入力ボックスに入力された値に戻したいですか?少なくともあなたの質問は明らかではありません。 : - | – Pradeepb
計算されたプロパティはこれに基づいています$ refs.square.clientWidth。私はそのプロパティがこの変更に反応することを望みます$ refs.square.clientWidth、これは起こりません。 codepenの私の例では、 "123456"と入力すると、このパターンが現れます(入力値は "i"、現在の幅は "w")。i: '1' => w: ''、i:'12 w: '123' => w:'12 '、i:' 1234 '=> w:' 123 'というようにwは常に更新の後ろにある – undefinederror