【问题标题】:Knockout: Mapping/binding JSON issue淘汰赛:映射/绑定 JSON 问题
【发布时间】:2012-09-05 05:56:23
【问题描述】:

我正在尝试获取 json 的基本 hello 工作示例,自动映射它然后绑定到可观察对象,我确定我遇到了一些基本错误。

ajax 调用返回的 JSON

"{\"Content\":\"hello world\"}"

JS

function ViewModel() {
var self = this;

self.message = ko.observable();

$.getJSON("/home/getmessage", function (response) {
    var mapped = ko.mapping.fromJSON(response);
    self.message(mapped.Content);
});
};

ko.applyBindings(new ViewModel());

我得到以下内容来代替我期待的“hello world”

function c(){if(0<arguments.length){if(!c.equalityComparer||!c.equalityComparer(d,arguments[0]))c.I(),d=arguments[0],c.H();return this}a.U.La(c);return d}

【问题讨论】:

    标签: jquery knockout.js knockout-mapping-plugin knockout-2.0 knockout-mvc


    【解决方案1】:

    排序后,我忽略了 ko.mapping 返回 observables 的事实,因此您必须将它们作为函数调用才能获取它们的值。

    function viewModel() {
    var self = this;
    
    self.content = ko.observable();
    
    $.getJSON("/home/getmessage", function (response) {
        var mapped = ko.mapping.fromJSON(response);
        self.content(mapped.Content());
    });
    }
    
    ko.applyBindings(new viewModel);
    

    【讨论】:

      猜你喜欢
      • 2014-03-20
      • 2013-05-27
      • 2015-03-30
      • 2014-03-26
      • 1970-01-01
      • 2014-09-18
      • 2015-07-16
      • 2017-02-18
      相关资源
      最近更新 更多