淘汰赛:遗漏的类型错误:对象# 没有方法“newCommentText”(knockout:

2019-09-18 02:36发布

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

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));

但是当我尝试添加一个新的评论我得到这个错误:

任何想法,我做错了什么? 我看了看knockoutjs.com网页一些淘汰赛的样品,这是他们如何做。

Answer 1:

尝试这个。

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

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

希望这可以帮助。



文章来源: knockout: Uncaught TypeError: Object # has no method 'newCommentText'