【发布时间】:2013-08-09 09:43:21
【问题描述】:
我有以下可观察数组,当视图被激活时(在 Durandal 的 activate() 函数中),它使用 Breeze 从 WebAPI 获取数据
var prices = ko.observableArray();
价格类具有三个属性:id、name和price。
然后我有以下数组:
var services = [{
active: true,
name: 'Service1',
price: getPrice('Service1')
}, {
active: true,
name: 'Service2',
price: getPrice('Service2')
}];
getPrice(name) 函数应该做的是获取名称作为参数传递的对象...
我希望能够在视图上执行以下操作:
<div class="services">
<ul data-bind="foreach: services">
<li data-bind="visible: active, text: name + ' ($' + price.price + ')'"></li>
</ul>
</div>
我在 StackOverflow 上进行了很多搜索,并尝试以多种方式做到这一点,但未能成功。我不确定我是否应该使用 ko.utils.arrayFirst()、ko.computed() 或我应该做什么。我尝试了很多方法但没有成功。
【问题讨论】:
标签: javascript knockout.js breeze durandal