无法解析绑定。 淘汰赛错误(Unable to parse bindings. knockout

2019-08-19 22:02发布

这是我第2天的学习淘汰赛。

试图连接“deleteItem”的按钮,点击。 它提供了以下错误。

错误

未捕获的错误:无法解析绑定。
消息:的ReferenceError:未定义deleteItem; 绑定值:点击:deleteItem

JavaScript的:

$(function () {
    var defaultData = [{
        id: 1,
        item: "Todo 1"
    }, {
        id: 2,
        item: "Todo 2"
    }, {
        id: 3,
        item: "Todo 3"
    }];
    var viewModel = {
        listItem: ko.observableArray(defaultData),
        addItem: function () {
            // Add new item
            var id = this.listItem().length + 1;
            this.listItem.push({
                id: id,
                item: "Todo " + id
            });
        },
        deleteItem: function () {
            alert(this);
        }
    }
    ko.applyBindings(viewModel, main);
});

HTML:

<div id="main">
    <button data-bind="click: addItem">+ Add Item</button>
    <div data-bind="foreach: listItem">
        <input type="text" data-bind="value: item" />
        <input type="button" data-bind="click: deleteItem" />
        <br />
    </div>
</div>

Answer 1:

该功能deleteItem是您的视图模型。 当你在里面绑定foreach ,绑定操作的情况下是个人itemlistItem阵列。 您需要绑定到$root.deleteItem引用根视图模型。



文章来源: Unable to parse bindings. knockout error
标签: knockout.js