Knockout JS-如何正确绑定observableArray
Knockout JS - How to correctly bind an observableArray
请看一下这个例子。http://jsfiddle.net/LdeWK/2/
我想知道如何绑定可观察数组的值。我知道上面例子中的问题,是这条线
<p>Editing Fruit: <input data-bind="value: $data" /></p>
$data是实际值,而不是通常绑定的可观察函数。这似乎应该是一个非常直接的过程,但我无法理解。
在其他情况下,我使用了可观察阵列,并将可观察对象作为可观察阵列的每个元素。我想知道如何让它只与可观测阵列一起工作。
感谢
如果将读/写绑定到数组或observableArray中的项,则它们需要是对象的属性。否则,$data
将是展开的可观测值,KO无法写入实际可观测值。
你必须做一些类似的事情:
var ViewModel = function(myFruit) {
var observableFruit = ko.utils.arrayMap(myFruit, function(fruit) {
return { name: ko.observable(fruit) };
});
this.fruit = ko.observableArray(observableFruit);
};
ko.applyBindings(new ViewModel( ["Apple", "banana", "orange"] ));
以下是一个示例:http://jsfiddle.net/rniemeyer/LdeWK/3/
单个水果不一定需要是可观察的,除非您需要UI对值的变化做出反应(您的示例确实需要做出反应,因为您显示的是水果的只读列表)。
这是我的破解方法:
<!-- ko foreach: list().map(observable => ({ value: observable })) -->
<input type="text" data-bind="value: value">
<!-- /ko -->
相关文章:
- 在VanillaJS中模拟模型双向数据绑定
- 无法通过数组映射绑定
- 主干-不管怎样,检查事件以前是否绑定过
- 用于搜索的聚合物嵌套绑定
- Angular:更新一次性绑定的数据
- 如何使用ngrepeat和双向绑定获得指令的隔离范围
- react.js中的密钥绑定
- 使用regex的jquery keydown绑定不会验证撇号和句点
- 将事件处理程序绑定到任何可能的事件
- AngularJS指令只识别双向绑定类型
- Telerik rad组合框多列数据绑定
- 对API数据使用声明性绑定
- 如何销毁/删除/取消绑定SnapSVG.js
- 在D3.js中,有没有任何方法可以将x和y方向上的滚动事件绑定到平移svg
- 数据绑定:'系统Char'不包含名为'xxxxx'
- react组件中的绑定方法
- 如何将ngrepeat下的ngmodel绑定到$scope
- WinJS内联绑定语法
- ng绑定和ng href问题.ng href未从控制器加载数据
- 如何在动态创建的节点上绑定函数