【发布时间】:2015-09-06 17:35:35
【问题描述】:
我在我的 angularJS 服务中使用以下代码来完成一些任务:
angular.factory('promiseFactory', function(){
var artistIds = [];
function setArtistIds(artistIds){
artistIds = artistIds;
}
return {
createPromiseForNotification: promiseFactory,
getNotis: getNotis,
setNotis : setNotis,
//setArtistIds : setArtistIds,
artistIds : artistIds
}
});
这个工厂用于另一个工厂的通知.js,我正在尝试设置
promiseFactory.artistIds = [1,2,3];
在一些 ajax 调用但它不起作用时,当我在我的 promiseFactory 的任何函数中使用 artistIds 变量时,结果是空白数组 [](初始值)。为什么?
好的,其次,当我使用一个名为 setArtistIds 的函数来实现相同的事情时,这件事会起作用,但即便如此我也必须做类似的事情
function setArtistIds(i){ // Right
artistIds = i;
}
但当我这样做时不是这样:
function setArtistIds(artistIds){ // Wrong
artistIds = artistIds;
}
谁能解释一下我做错了什么。
【问题讨论】:
标签: javascript angularjs angular-services revealing-module-pattern