この質問をお読みいただきありがとうございます。 私はAngularJSアプリを作っています。 私は状態を作り、ユーザーサービスで定義されているUser.getProfileを呼び出す解決策を定義しました。 これは、サービスがプロファイルの取得に成功したが、失敗したときには機能しなかった場合に、この解決策が機能しているためです。 コードを投稿させてください。サービスが失敗したときの状態を解決するには
.state('app.profile', {
url: '/profile',
views: {
'menuContent': {
templateUrl: 'views/pages/profile.html',
controller: 'ProfileCtrl',
}
},
resolve: {
data: function(User) {
return User.getProfile();
}
}
})
ここではサービスiを定義します。
service.getProfile = function() {
var deferred = $q.defer();
HttpReq.sendRequest(RESTAPI.DEV_URL + RESTAPI.PROFILE,
'GET',
undefined,
function(result) {
/*
*/
if (result.success) {
deferred.resolve(result);
}
else {
deferred.reject(result);
}
},
function(error, response) {
deferred.reject(error);
//uiHelper.alert($scope, 'Login Error', response.message);
});
return deferred.promise;
};
defer.resolveがサービスで呼び出されたときにapp.profileが解決されます。 defer.rejectが呼び出されると解決されません。 私は約束の電話に問題がある場合は私を修正してください。
ありがとうございます!
私は実際にあなたがして(successCallback、errorCallback) 'then'構文' '' User.getProfile()を追加することで、ステータスを取得することができ、それを取得できませんでした。実際にあなたが戻ってきているので、 '' '。約束、私はあなたがそれをどのように使用するのかわかりません –
それは私が望んでいないものです。 –
それはあなたが欲しいものが本当に明確ではない –