1

これは、サービスから受け取るJSONです。これには「最初の」配列とResponseStatus配列が含まれます。

{"Customers":[{"Id":1,"Name":"Thomas","LastName":"Deutsch"},    {"Id":2,"Name":"Julia","LastName":"Baumeistör"}],"ResponseStatus":{}}        

そして、この最初のJSON配列はko.mappingでマッピングされます

$.getJSON(self.Url, function (data) {
    ko.mapping.fromJS(data.Customers, {}, self.Items);
});

それはうまく機能します。しかし、ここにあります

問題:サーバーが最初の位置に「Companies」JSON配列を返す可能性があるため、「data.Customers」を使用できません。

質問:「最初の」配列のみを解析するマッピングは可能ですか?ハマった....

4

2 に答える 2

0

これはあなたがやろうとしていることでうまくいくかもしれません

$.getJSON(self.Url, function (data) {
    $.each(data, function(i, item){

        var customers = getPersonnel(item.Customers);
        var companies = getPersonnel(item.Companies);
        var response = getPersonnel(item.ResponseStatus);

        if(customers != null){
            // Parse JSON here...
        }

        if(companies != null){
            // Parse JSON here...
        }

    });

});
于 2012-06-22T14:54:03.527 に答える
0

マッピング プラグインの動作を定義できます。

http://knockoutjs.com/documentation/plugins-mapping.html (セクション「高度な使用方法」 )を参照してください。

于 2012-06-22T15:37:34.117 に答える