【问题标题】:knockout mapping and current item properties淘汰赛映射和当前项目属性
【发布时间】:2014-06-18 07:10:27
【问题描述】:

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

  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 不出现在控制台中。 感谢您的观看。

【问题讨论】:

标签: knockout.js


【解决方案1】:

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

如果你尝试:

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

你会在结尾看到fullName(在开头看到id)。

Fiddle

【讨论】:

    【解决方案2】:

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

    它在 lastName 之后的“data”对象中定义:“Smith”在第 6 行归档。

    请参考

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

    谢谢, Nikunj Balar。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-06-08
      • 1970-01-01
      • 2014-03-26
      • 2013-07-16
      • 2012-12-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多