例如,如果我的循环如下
function test(obsArray,dynamicColumnName){
var item = obsArray();
ko.utils.arrayForEach(item, function(data) {
computedColName = ko.computed(function () {
return data.dynamicColumnName();
});
}
如何在数组循环中传递动态列?
我尝试了上述方法但我得到的错误为Object doesnt support property or method dynamicColumnName
答案 0 :(得分:0)
我确定你想要为每个数组对象添加计算。每个计算应该取决于name属性。
var arr = [
{name:"A",active:true},
{name:"B",active:true},
{name:"C",active:true},
]
function test(){
var self = this
self.TestData = ko.observableArray([])
self.LoadData = function(){
self.TestData(arr)
self.MakeComputed()
}
self.MakeComputed = function(){
ko.utils.arrayForEach(self.TestData(),function(data) {
data.computedColName = ko.computed(function () {
return data.dynamicColumnName();
});
});
}
self.LoadData()
}
ko.applyBindings(new test())