有没有办法将observable转换为可观察数组?
我问这个是因为我的代码中有一个函数需要可观察数组,因为函数使用ko.utils.arrayForEach
我试着谷歌但却找不到任何东西。
更新
我使用var test = isObservable(item)
检查了我传递的内容。我没有观察到我正在传递,因为我在变量test
它的正常数组中得到了错误。
所以我想将数组转换为可观察数组
答案 0 :(得分:1)
这个问题对我来说并没有多大意义,但这里有 -
要将数组转换为可观察数组,请执行此操作 -
var normalArray = ['1', '2']
normalArray = ko.observableArray(normalArray);
// normalArray is now an observableArray
答案 1 :(得分:0)
您可以使用ko.observableArray()
var SimpleListModel = function(items) {
this.items = ko.observableArray(items);
this.itemToAdd = ko.observable("");
this.addItem = function() {
if (this.itemToAdd() != "") {
this.items.push(this.itemToAdd()); // Adds the item. Writing to the "items" observableArray causes any associated UI to update.
this.itemToAdd(""); // Clears the text box, because it's bound to the "itemToAdd" observable
}
}.bind(this); // Ensure that "this" is always this view model
};
ko.applyBindings(new SimpleListModel(["Alpha", "Beta", "Gamma"]));