从角度服务
调用IBM Worklight时,以下代码失败我的角度服务正在调用工作灯适配器
.factory('Profile', [
function () {
return {
loadUserProfileSuccess:function(result){
if(result.statusCode = 200)
console.log("Succes");
},
loadUserProfileFailure:function (result){
console.log("failure");
},
getUserProfile: function($rootScope,user){
var invocationData = {
adapter : 'RSSReader',
procedure : 'find_or_create',
parameters : [user.name,user.email]
};
WL.Client.invokeProcedure(invocationData,{
onSuccess : loadUserProfileSuccess,
onFailure : loadUserProfileFailure
});
},
}//end return
}]);
调用worklight适配器时,程序端的所有内容都显示效果很好。但是,即使回调函数loadUserProfileSuccess
被定义,但有角度也会抱怨......
Error: Can't find variable: loadUserProfileSuccess
getUserProfile@file:///...
答案 0 :(得分:1)
您正试图错误地访问loadUserProfileSuccess
。内联移动函数:
WL.Client.invokeProcedure(invocationData, {
onSuccess: function (result) {
if (result.statusCode = 200) console.log("Succes");
},
onFailure: function (result) {
console.log("failure");
}
});
或者在你要归还的对象之外声明它们:
factory('Profile', [
function () {
var loadUserProfileSuccess = function (result) {
if (result.statusCode = 200) console.log("Succes");
};
var loadUserProfileFailure = function (result) {
console.log("failure");
};
return {
loadUserProfileSuccess: loadUserProfileSuccess,
loadUserProfileFailure: loadUserProfileFailure,
getUserProfile: function ($rootScope, user) {
var invocationData = {
adapter: 'RSSReader',
procedure: 'find_or_create',
parameters: [user.name, user.email]
};
WL.Client.invokeProcedure(invocationData, {
onSuccess: loadUserProfileSuccess,
onFailure: loadUserProfileFailure
});
},
} //end return
}]);