我需要在解决promise之后从我的工厂更新变量notifications
。
我的想法是这样称呼:
InboxNotificationFactory.notifications
这将返回0,然后当promise被解析时,它将更新为其他一些值而无需在我的控制器中使用.then()
。
inboxApp.factory('InboxNotificationFactory', function (inboxHttpService) {
getNotifications();
return {
notifications: 0
};
function getNotifications() {
inboxHttpService.totalUnreadMessages().then(function(response) {
//ERROR RIGHT HERE
this.notifications = response.data;
});
}
});
答案 0 :(得分:1)
this.notifications
不存在。这样的事情可能更接近你想要的东西:
inboxApp.factory('InboxNotificationFactory', function (inboxHttpService) {
var notifications = 0;
inboxHttpService.totalUnreadMessages().then(function(response) {
notifications = response.data;
});
return {
notifications: notifications
};
});