【问题标题】:KnockOut Unable to parse bindings. ReferenceErrorKnockOut 无法解析绑定。参考错误
【发布时间】:2013-11-04 13:01:54
【问题描述】:

错误:无法解析绑定。消息:ReferenceError:消息未定义;绑定值:文本:消息。

我无法弄清楚绑定失败的原因。

下面是javascript代码:

    var LogItemModel = function () {
        var self = this;

        function LogItem($root, appName, level, message) {
            self.appName = ko.observable(appName);
            self.level = ko.observable(level);
            self.message = ko.observable(message);
        }

        self.logItems = ko.observableArray();

        self.add = function (appName, level, message) {
            self.logItems.push(new LogItem(self, appName, level, message));
        };
    };


    $(document).ready(function () {
        var logItemModel = new LogItemModel();
        ko.applyBindings(logItemModel);
        var url = "http://localhost:49091/api/Log";

        $.getJSON(url, function (result) {
            $.each(result, function (idx, logItem) {
                logItemModel.add(logItem.ApplicationName, logItem.Level, logItem.Message);
                debugger;
            });
        }).error(function (e) {
        });

    });

下面是html代码:

<div id="LogItemList" data-bind="foreach:logItems">
    <span data-bind="text: message"></span>
</div>

我什至尝试将绑定应用到 LogItemList 元素

ko.applyBindings(logItemModel, $("#LogItemList")[0]);

但即使这样也没有用。

【问题讨论】:

    标签: javascript knockout.js


    【解决方案1】:
    function LogItem($root, appName, level, message) {
        self.appName = ko.observable(appName);
        self.level = ko.observable(level);
        self.message = ko.observable(message);
    }
    

    在这个函数中,LogItemModel中引用了self,改成这样:

    function LogItem($root, appName, level, message) {
        var that = this;
        that.appName = ko.observable(appName);
        that.level = ko.observable(level);
        that.message = ko.observable(message);
    }
    

    【讨论】:

      猜你喜欢
      • 2020-07-25
      • 1970-01-01
      • 1970-01-01
      • 2013-02-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多