【问题标题】:Knockout error: dataToRetain is undefined淘汰赛错误:dataToRetain 未定义
【发布时间】:2012-05-21 19:12:21
【问题描述】:

我在使用多个 observableArray 并在一个视图模型中添加/删除项目时遇到问题。

该场景基本上是一个联系人管理表单,所以我试图让他们输入多个电子邮件地址/电话号码等。

这是一个测试用例:

http://jsfiddle.net/8rhv9/

尝试添加一些电子邮件和电话号码,直到错误发生。

如果有帮助,我正在使用 Firefox 12。

我的代码基于淘汰网站上的这个示例:

http://knockoutjs.com/examples/gridEditor.html

【问题讨论】:

    标签: javascript knockout.js


    【解决方案1】:

    您在电话和电子邮件定义中忘记了var self = this;。此处修复了 jsfiddle 示例:

    http://jsfiddle.net/8rhv9/1/

    【讨论】:

    • 天啊!盯着它太久了:(
    【解决方案2】:

    我改变了它,所以这些函数确实 var self = this..... 现在似乎可以正常工作了

    var self = this;
                self.Number = ko.observable();
                self.Notes = ko.observable();
                self.ContactType = ko.observable();
            };
    
            var email = function () {
                var self = this;
                self.Email = ko.observable();
                self.Notes = ko.observable();
                self.ContactType = ko.observable();
            };
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-11-09
      • 1970-01-01
      • 1970-01-01
      • 2016-08-13
      • 2018-08-04
      • 2015-02-24
      • 1970-01-01
      相关资源
      最近更新 更多