$scope.clickfunction = function(arg){
var url ="";
var httppromise = $scope.promiseufunction(arg); // return a http promise
httppromise.then(function(res){
if(res){
url ="path/"
$('#htmlelement').attr('href', url);
}else{
url="path2/"
$('#htmlelement').attr('href', url);
};
});
} //<---- this line execute before the inner function of promise.then
を解決すると約束する前に私は上記のclickfunction関数を呼び出しNG-クリックでアンカータグを持っています。 私はhref属性を解決して更新する約束に頼っていますが、関数の終わりがpromise.then()のinnner関数の前に達していて、ng-clickが正しく動作しないことがわかりました。 hrefのng-clickイベントの後に更新された属性。機能の終了angularjsが
どのようにこの機能の最後に到達する前に約束の内部機能を確認するために、これを解決することができますか?
これは非同期プログラミングの仕組みです。内部 'then'関数は、HTTPリクエストが完了した後の段階で呼び出されます。 – ZeMoon
urコードは実行されますか?それは構文エラーがあるようです – Mohayemin
ありがとうございます。私は変更、任意の提案どのように私は正しく私のNGクリックを動作させるためにこれを書き換えることができます – GlassMan