似乎敲除没有正确映射数组中对象的属性。敲除不映射数组中对象的属性
见这个例子从Chrome的控制台:
> var viewmodel = ko.mapping.fromJS({list:[]});
undefined
> viewmodel.list().unshift({ name : ko.observable("Foo") });
1
> viewmodel.list()[0].name();
"Foo"
> var js = ko.mapping.toJS(viewmodel);
undefined
> js.list[0].name;
undefined
所以正在创建JavaScript对象,但“名称”属性不被映射。
任何想法都非常欢迎!
感谢您的快速回答。有没有任何修改行为来映射每个属性的方法?文档似乎没有提到这一点。 – 2012-04-16 14:42:05
@RichardAstbury我不这么认为。您需要将其硬编码到定制版本的映射插件中。 – Niko 2012-04-16 15:09:58
我已经找到了ko.toJSON(viewModel),这似乎是做这项工作。 – 2012-04-25 08:56:38