2

ko.mapping.fromJS() を使用して作成された監視可能な配列には、監視可能な要素があります。配列は監視可能ですが、配列の要素は監視できない ko.observableArray() のように動作させるにはどうすればよいですか? ありがとうございました。

4

2 に答える 2

2

マッピング プラグインの作成オプションを使用できます。ko ドキュメント ( http://knockoutjs.com/documentation/plugins-mapping.html ) から:

// The data to be mapped
var data = {
    name: 'Graham',
    children: [
        { id : 1, name : 'Lisa' }
    ]
};

// Your custom data model
var myChildModel = function (data) {
    this.id = data.id;
    this.name = data.name;
};

var mapping = {
    'children': {
        create: function(options) {
            return new myChildModel(options.data);
        }
    }
};

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

この例から、'children' 配列はオブザーバブル配列のようにマップされ、プロパティはオブザーバブルではありません。

于 2013-08-09T12:33:32.477 に答える