淘汰赛映射和当前项目属性

时间:2014-06-18 07:10:27

标签: knockout.js

当我使用ko.mapping创建视图模型时,我使用一些额外的可观察对象来扩展它。绑定,它在视图中完美运行,但当我尝试单击按钮并获取数据时,扩展属性不会出现。为什么?

  create: function (options) {
    var parent = new Parent(options.data);
    parent.id = 1;
    parent.fullName = ko.computed(function () {
        return parent.firstName() + " " + parent.lastName();
    });
    parent.select = function (data, event) {
        console.log(ko.mapping.toJSON(data));
    };
    return parent;
  }

完整代码: http://jsfiddle.net/rferreiraperez/9v2hy/

可观察的属性ID和FULLNAME不会出现在控制台中。 谢谢你看看。

2 个答案:

答案 0 :(得分:1)

我认为ko.mapping.toJSON只显示它自己映射的属性。

如果您尝试:

console.log(ko.toJSON(data));

您最后会看到fullName(和id)。

<强> Fiddle

答案 1 :(得分:0)

您可以在数据对象中添加fullName字段。

它定义了&#34;数据&#34; lastName之后的对象:&#34; Smith&#34;在第6行提交。

请参阅

Visit http://jsfiddle.net/nikunjbbalar/4FwQg/2/

谢谢, Nikunj Balar。