knockout:Uncaught TypeError:Object#<object>没有方法'newCommentText'</object>

时间:2012-06-13 20:29:32

标签: javascript knockout.js

我的视图模型中有这样的代码:

function ChatListViewModel(chats) {
    var self = this;

    self.newCommentText = ko.observable();

    self.addComment = function(chat) {
      var newComment = { CourseItemDescription: this.newCommentText() };
      chat.CommentList.push(newComment);
      self.newCommentText("");       
    };

}

ko.applyBindings(new ChatListViewModel(initialData));

但是当我尝试添加新评论时出现此错误:

enter image description here

任何想法我做错了什么?我在knockoutjs.com网页上查看了一些淘汰样本,这就是他们的做法。

1 个答案:

答案 0 :(得分:5)

试试这个。

self.addComment = function(chat) {
   var newComment = { CourseItemDescription: self.newCommentText() };
   chat.CommentList.push(newComment);
   self.newCommentText("");       
};

你的这个变量不是你所期望的。

希望这有帮助。