Constants.getContantsは、アプリケーションで使用されるすべての定数を取得する約束です。これを$ scope変数に保存して、コントローラやアプリケーションのどこにでもアクセスできるようにしたいと思います。今、私がそれにアクセスする必要があるときはいつも、私はその呼び出しを繰り返し、そこで操作を行う必要があります。 $スコープに保存しようとしても、対応するハンドラの外部では使用できません。この問題を解決する方法。
Constants.getConstants().then(function (AppContants) {
$scope.responseCount = AppContants.data.serverUrl+AppContants.data.appId
console.log($scope.responseCount);
//$scope.$apply();
});
console.log($scope.responseCount);
ここでAJAX呼び出しも同期しなくなるだろう:以下
は、私が使用しているコードです。ハンドラ関数の内部で実行する必要があることがわかっているので、AJAX呼び出しが成功した後に目的のアクションが実行されることを確認できます。私は関数の外でこれらの変数を使用する必要があります。私は$ scopeを試しました。$ apply()も同様です。それは助けになりませんでした。これを解決する方法はありますか?前もって感謝します。あなたのサービスで、あなたのケースで
this.getConstants= function($username){
var endpoint = "url";
return $http({
method: 'get',
url: endpoint
});
};
あなたはそれが戻ることを期待していますか? 'then'コールバックの' AppContants'はあなたが期待するデータを持っていますか? –
こんにちは@AnandMP、あなたが達成しようとしているシナリオを簡潔にしてくれれば分かりますか?それは私に良い理解を与えるでしょう –