Knockout JS:mapping.fromJS在添加时剥离对象的可观察属性

时间:2013-10-24 15:12:55

标签: javascript knockout.js coffeescript

我有以下ko.mapping和一个对象(coffeescript):

form_fields = ko.mapping.fromJS []

obj =
  name: ko.observable 'some_name'
  type: ko.observable 'some_type'
  avail_values: ko.observableArray some_array
  vals: ko.observableArray some_other_array_of_observables

我已经验证了obj正在按照挖掘可观察功能的预期填充。如果我拨打obj.name(),我会收到预期值,例如。

但是,当我执行form_fields.push objko.mapping.fromJS [obj], form_fields时,form_fields会填充一个空对象。该对象存在于数组中,但它根本没有属性。

这是Chrome开发工具中的结果数组:

Dev tools object

我是否需要做其他事情来实现这一目标?

1 个答案:

答案 0 :(得分:1)

使用

ko.mapping.fromJS [obj], {}, form_fields

中间的空对象是mapping rules,这是指定映射目标时所需的参数。