ngRoute の解決の一部である関数にパラメーターを渡す方法がわかりません。
私の場合、トークンを使ってやっています。これらのトークンは入力されているため、パスワードの確認と電子メールの送信とリセットに同じトークンを使用することはできません。これが私のルートの定義方法です:
.when("/confirm/:token", {
controller: "confirmEmailController",
templateUrl: "/app/views/confirmEmail.html",
resolve: {
tokenStatus: getTokenStatus
}
})
.when("/reset/:token", {
controller: "resetPasswordController",
templateUrl: "/app/views/resetPasswordEmail.html",
resolve: {
tokenStatus: getTokenStatus
}
})
getTokenStatus
両方に対して呼び出される関数は次のとおりです。
var getTokenStatus = ["$q", "$route", "tokenService", function($q, $route, tokenService)
{
var deferred = $q.defer();
var tokenType = ???? //<-- how do I pass this?
tokenService
.getTokenStatus($route.current.params.token, tokenType)
.success(function(response)
{
deferred.resolve(true);
})
.error(function()
{
deferred.resolve(false);
});
return deferred.promise;
}];
問題は、コードの重複を避けるために、コードでマークされているように、何らかの方法でトークン タイプの値を渡す必要があることです。どうすればそれができますか?
過去2時間、これをいじっていましたが、理解できないようです。