我有angularJs getter和setter工厂来获取processkey
,setter按预期工作,我在processKey
中有processFactory
但是当我从控制器调用getProcessid
时抛出错误。
如何使用AngularJS解决此问题?
ctrl.js
processFactory.setProcessId($stateParams.processId);
processFactory.getProcessId().then(function(response){
var processKey = response;
consoel.log('PROCESSKEY GETTER',processKey)
});
factory.js
setProcessId: function(id){
processKey = id;
},
getProcessId: function(){
return processKey;
}
错误
angular.js:11594 TypeError: processFactory.getProcessId(...).then is not a function
答案 0 :(得分:1)
我想没有asyn操作,所以你可以简单地完成 -
$cookies.put("", token);
var processKey = processFactory.getProcessId();
如果你想在函数内部进行一些异步操作,那么你可能想要使用promise ...如果你想让你的控制器代码工作,你可以这样写: -
getProcessId: function(){
var defer = $q.defer();
defer.resolve(processKey);
return defer.promise;
}