我使用的是knockjs,我在js文件中创建了动态observableArrays。
防爆。 product+productid
创建动态observableArrays为product123
。
我想在数据绑定foreach循环中使用它,并希望在html文件中再次动态创建此变量。
类似于:data-bind="foreach: { data: "product"+product.id()()}
所以这个"product"+product.id()()
绑定应该调用我的product123()数组。
我怎样才能做到这一点?
答案 0 :(得分:0)
您可以使用$data
来引用当前上下文,并使用数组表示法来索引动态命名的元素。
vm = {
product: ko.observable('123'),
product123: ko.observableArray([
'one', 'two', 'three'
])
};
ko.applyBindings(vm);
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.2.0/knockout-min.js"></script>
<div data-bind="foreach: $data['product'+product()]">
<div data-bind="text: $data"></div>
</div>
答案 1 :(得分:0)
嘿,它适用于vm['product'+product.id()]