[英]knockoutjs observable array of observable objects binding
我有一個問題,當我將包含可觀察屬性的對象添加到observablearray時,接口未更新。
我在這個論壇上研究了類似的問題( KnockoutJS-Observable對象的Observable數組 ),但是我仍然無法正確獲取語法,因此在嘗試了一天之后,我轉向期望幫助的人。
我已經創建了我要實現的目標的典范
https://jsfiddle.net/ryrpnbr9/23/
當您按下添加按鈕時,將創建一個BatchItem對象,並將其添加到Batch的BatchItems observablearray中。 我可以看到該對象正在更新。
我有一個表,定義了以下綁定
<tbody data-bind="foreach: Batch.BatchItems()">
<tr>
<td><span data-bind="text: DocumentType"></span></td>
<td><span data-bind="text: ItemType"></span></td>
</tr>
</tbody>
任何幫助將非常感激。 謝謝
代替self.Batch.BatchItems().push(bi);
,則必須調用self.Batch.BatchItems.push(bi);
兩者之間的區別:
第一個直接推送到可觀察數組內部的數組。 這行得通,但是淘汰賽將無法告訴您某些更改...
第二個使用ko.observableArray
內部的push
方法。 此push
方法再次推入內部數組,但它也調用valueHasMutated
。 這將觸發更新模型和UI所需的依賴項更新。
更新了小提琴 ,其中已刪除()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.