私のアプリケーションでは、配列内の配列内のオブジェクトを持つ構造体があります。オブジェクトはANDルールと呼ばれ、オブジェクトを含む配列はORルールと呼ばれます。構造は次のようになります。配列内のオブジェクト内の値をEmber.jsで配列に変更する1.13
matching: [
[ // OR rule
{ // AND rule
name: "rule #1.1",
value: "test"
},
{ // AND rule
name: "rule #1.2",
value: "test B"
}
],
[ // OR rule
{ // AND rule
name: "rule #2.1",
value: "test C"
}
]
]
値を変更しようとすると、Emberはすべての値を変更します。たとえば、ルール#1.2の値を「テスト値」に変更すると、ルール#1.1およびルール#2.1の値も「テスト値」に変更されます。私は、値を設定するには、次のコードを使用します。
setValue (andIndex, orIndex, value) {
var orRule = this.get('matching').objectAt(orIndex);
var andRule = orRule.objectAt(andIndex);
Ember.set(andRule, 'value', value.target.value);
}
私は値を変更するテンプレートは以下のようになります。
{{#each matching as |orRule orIndex|}}
{{#each orRule as |andRule andIndex|}}
<input type="text" onkeyup={{action 'setValue' andIndex orIndex value=value}}>
{{/each}}
{{/each}}
私の質問は:私は私が変更一つの値だけを変更したいです。これはどうすればいいですか? 注:私はEmber.JS 1.13を使用します。
はどのように...実際にあなたのコードがperfect..Iであるあなたが...チェックを確認し、私はあなたのソリューションを試してみました – kumkanillam