vue.jsを初めて使用しています私はangularjsアプリを移行し始めています。私はvue cliを使って新しいsimple-webpackプロジェクトを生成しています。これにより、新しいwebpack + vueLoaderプロジェクトが作成されます。すべてがスムーズに進みましたが、今は問題があります。私の@clickイベントで私はVueのインスタンスデータの一部を変更しましたが、UIに反映されていません。 via Vue開発ツールを使って、インスタンスが正しく更新されているのを確認できます。@clickメソッドでデータを変更した後、vuejs UIが更新されない
export default{
data() {
return {
page: { items: null}
}
};
<div v-for="item in items" class="row-margin">
{{item.checked}}
<input type="checkbox" v-model="item.checked"><span>{{item.title}}</span>
</div>
と私は私のAJAXの成功コールバックのアイテムを更新:
this.items = response.items;
私はvuejsはゲッターを使用してその反応性を実現し、したがって、他に何も必要ありません知っています。欠けている部分は何ですか?
助けてください。
大切にしてください。
項目は、オブジェクトの配列です。配列要素の1つのプロパティが変わったときに応答する必要があります。 –
[Computed Properties and Watchers](https://vuejs.org/v2/guide/computed.html)についてはどうですか? – user2976753
計算されたcantは反応的な権利ですか?毎回計算を実行する必要があります。もしそうなら、私はそれを避けることを好む。ウォッチャーと同様のアプローチ。私の答えを見てください、 'created'イベントで、私はajax呼び出しを行います。応答はvueインスタンスdata.items prop(vueインスタンス宣言時にnullとして作成されます)を設定します。 data.items配列内のオブジェクトはpropをチェックしていません。ユーザーが何かをクリックすると、サーバーに行き、チェックされた項目を取得し、ループを使用するとdata.items配列オブジェクトにtrue \ falseが設定されます。最初の応答でチェックした小道具をすべて追加すれば –