0

私は最後の日のためにこれで頭をかいてきました..誰かがいくつかの光を当てることができることを願っています。単純なjavascriptオブジェクトがあります--data--JSON.stringify(data)は次のように返します。

{
    "dataList": [
        {
            "Id": 0,
            "Name": "0",
        },
        {
            "Id": 1,
            "Name": "1",
        }
    ]
}

また、非常に単純なノックアウトビューモデルもあります。

var viewModel = {
            dataList: ko.observableArray([])
        };

次に、ドキュメントサイトに従って、単純なknockout.JSマッピング呼び出しを実行します。

ko.mapping.fromJS(data, viewModel);

私のviewModelには、2の配列であるdataListメンバー(実際にはありません)が含まれていると思います(そうではありません!)。代わりに、空の配列を取得します。ここのマッピングには何が欠けていますか?

4

1 に答える 1

2

viewModelオブジェクトのプロパティを定義する必要はありません。マッピングプラグインがそれらを作成します。viewModelをそのように宣言するだけです。

var viewModel = ko.mapping.fromJS(data);

http://jsfiddle.net/vqaVT/

サーバーからの更新されたデータでviewModelを更新する必要ko.mapping.fromJS(data, viewModel)がある場合にのみ、他の呼び出しを行う必要があります。

于 2012-05-08T17:41:39.430 に答える