这个问题涉及到 selected object pattern with knockout 由于答案,我可以通过绑定设置所选项目。
但是,我将如何在代码中设置它?
例如,我想创建一个新对象并将其设置为模型中的选定对象。
通常会这样。 1)创建对象。 2)设置对象默认值。 3)Model.selected_object = objectJustCreated
//model
item_selected = ko.observable();
//code
var new_item = app.createItem(defaults);
model.item_selected = new_item;
我正在尝试将模型中的observable切换出来但我的绑定并没有反映出这些变化。我是否必须遍历这些值并以这种方式更新所选对象?
任何帮助都非常感激。
答案 0 :(得分:1)
当你设置一个observable的值时,你需要将它作为observable的第一个参数传递(这是一个函数)。
所以,你想要这样做:
model.item_selected(new_item);
以下是基于上一个问题的示例:http://jsfiddle.net/rniemeyer/ST8gt/