选择的对象模式与淘汰pt 2

时间:2012-01-25 09:18:09

标签: knockout.js

这个问题涉及到 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切换出来但我的绑定并没有反映出这些变化。我是否必须遍历这些值并以这种方式更新所选对象?

任何帮助都非常感激。

1 个答案:

答案 0 :(得分:1)

当你设置一个observable的值时,你需要将它作为observable的第一个参数传递(这是一个函数)。

所以,你想要这样做:

model.item_selected(new_item);

以下是基于上一个问题的示例:http://jsfiddle.net/rniemeyer/ST8gt/