Что не так с моим объектом (относительно плагина отображения knockoutjs) - PullRequest
0 голосов
/ 03 ноября 2011

Я вырываю свои волосы с этим. Я не уверен, что происходит. Я прочитал все учебные пособия по картированию, но я явно что-то упускаю.

{
        "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 выглядел по-другому. У него не было вложенного объекта, а также были скобки в начале и в конце, делающие его массивом. Кажется, это было бы довольно просто. Я не получаю никаких ошибок вообще. Спасибо за помощь.

EDIT

http://jsfiddle.net/gjemN/

1 Ответ

3 голосов
/ 04 ноября 2011

В вашем примере вы имеете дело с объектом JavaScript, а не с JSON (его строковое представление).

Итак, вы хотели бы позвонить ko.mapping.fromJS. Если вы получаете множество клиентов, то вы можете сделать:

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

Что-то вроде: http://jsfiddle.net/rniemeyer/BQe2z/

...