0

我用这个把头发拉出来。我不确定发生了什么。我已经阅读了所有关于映射的教程,但我显然遗漏了一些东西。

{
        "address": "110",
        "city": "Durham",
        "id": 1,
        "name": "Keep",
        "persistent": true,
        "salesRep": "Me",
        "state": "NC",
        "user": {
            "email": "test@test.com",
            "id": 4,
            "name": "Test",
            "password": "test",
            "persistent": true
        }
    }

我试过了

ko.mapping.fromJSON(data);

ko.mapping.fromJS(data);

在我的旧代码中,我最终这样做了。

    viewModel.customers(data);

但我的 JSON 看起来不一样。它没有嵌套对象,并且它的开头和结尾也有括号,使其成为一个数组。看起来这将是非常基本的。我根本没有收到任何错误。谢谢您的帮助。

编辑

http://jsfiddle.net/gjemN/

4

1 回答 1

3

在您的示例中,您处理的是 JavaScript 对象而不是 JSON(它的字符串表示形式)。

所以,你会想调用 ko.mapping.fromJS。如果您要找回一系列客户,那么您可以这样做:

ko.mapping.fromJS(data2, null, viewModel.customers)

像:http: //jsfiddle.net/rniemeyer/BQe2z/

于 2011-11-03T21:17:32.837 回答