我对 Angular 还很陌生,正在尝试了解一切是如何工作的。我一直在四处寻找,但找不到任何有关如何执行此操作的信息。所以,我有一个定义的服务
this.totalCount = 0;
在我的 Controller 中,我的 get 请求检索一些电子邮件,然后为它检索的每条消息执行一个名为 addMessage 的函数。 addMessage 函数为我服务。
我的服务中的函数如下所示:
this.addMessage = function (messageObj) {
this.messagesList.push(messageObj);
}
基本上,我试图在每次执行此函数时增加 this.totalCount ,以便它会更新,然后可以显示在 View 中。我当前将其显示在 View 中,但其编号始终保持为 0。
我尝试过以下方法:
1.
this.addMessage = function (messageObj) {
this.messagesList.push(messageObj);
this.totalCount++;
}
2.
var count = this.totalcount
this.addMessage = function (messageObj) {
this.messagesList.push(messageObj);
count++; //and then attempted to display this value in the view but with no luck
}
任何提示将不胜感激。
最佳答案
试试这个:
var that = this;
this.addMessage = function (messageObj) {
that.messagesList.push(messageObj);
}
关于javascript - 通过函数更新服务中的 'this' 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31433731/