2014-04-03 44 views
0

从角服务调用IBM工作灯工作灯和角度服务

我的角度服务调用工作灯适配器

.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 

}]); 

当调用工作灯适配器时,下面的代码失败,似乎一切都很正常上程序方面。但角度抱怨,即使回调函数loadUserProfileSuccess定义...

Error: Can't find variable: loadUserProfileSuccess 
[email protected]:///... 

回答

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 


}]);