をクリックしてくださいリクエストを取得する。データを取得して処理し、$ scope変数に格納します。上記のようにクリックイベントをトリガーする前に、これらのリクエストを完了することが必要です。私は両方の機能に約束を実装しました。しかし、クリックも最初に完了してから、httpリクエストが完了します。上記の要件をどのように達成できますか?プロセスHTTP GET完全に前の要求は、私は、次のJavaScriptコードを持っているイベント
答えて
あなたはこのように、約束を使用する必要があります:あなたの例では
$scope.fav_bill_details=function (id1,id2,bill_id) {
document.getElementById(id2).style.display="none";
$scope.getActiveBill().then(function() {
document.getElementById(id1).style.display="block";
return $scope.getBillDetails(bill_id);
}).then(function() {
var btn=angular.element(document.getElementById(bill_id));
angular.element(document.getElementById(btn.id)).trigger('click');
});
あなたは非同期関数を呼び出すが、それらが終了するのを待っていない、これはそれを解決します。
しかし、関数 'getActiveBill'は約束オブジェクトを返します。 'getBillDetails'がリクエストを完了するのを待つことも確かですか?私は 'getBillDetails'も約束オブジェクトを返し、' then'は次のように実行されるべきだと思います: return $ scope.getBillDetails(bill_id).then(function(){/ * trigger thingy */ }) ; – toraman
まず、彼は両方とも約束を返すと書いた。そして、私が書いたことが、何を示唆しているのですか。約束がもう一つの約束を返すと、次の約束を待っています。私が書いたことは、getActiveBill =(約束待ち)=> getBillDetails =(約束待ち)=>何かをすることです。 – Nayish
あなたは絶対に正しいです。申し訳ありませんが、私は彼が約束を述べているのを見ませんでした。また、約束がどのように働くかについてもあなたは正しいです。私は何を考えているのか分かりません – toraman
- 1. GETデータは、私は次のhtml持っているJavaScriptコード
- 2. Laravel - 要求は、私は次の形式を持っている
- 3. FileSystemWatcherイベントのロックと私は次のコードを持っている
- 4. JavaScriptは、私は次のコードを持っている属性
- 5. は、私は、次のJavaScriptコードを持っている未定義
- 6. Axiosは、私は私のlaravelエンドポイントに次の要求を持っているnext.js
- 7. $は、私は、次のJavaScriptコードを持ってどこにでも
- 8. CSS:私は次のHTML持って、常に完全な高さ
- 9. エンティティフレームワーク私は、次のコード(例)を持っている名前
- 10. Javascriptを:私は次のコードを持っているオブジェクトフィールド
- 11. は、次のように私がイベントを持っているイベント
- 12. 春コントローラは、私はこの要求エンドポイントを持って次の要求
- 13. Javascriptが、私は次のコードを持っているQML
- 14. JavaScriptと私は次のコードを持っている
- 15. 読むのJSONオブジェクトと私は、次のGET要求を持っていることに
- 16. JavascriptのKeyDownイベントは、私はこのコードを持っている別のファイルに
- 17. は、AJAXは:私は、次のJavaScript/jQueryのコードでウェブサイトを持っている
- 18. Angular2コードは、私は次のコードを持っているインラインテンプレートエラーに
- 19. TSQLは、私は、次の要求を持って秤量列
- 20. Djangoは、私はデフ指数(要求を)持っている私のview.pyのコード
- 21. は、私は次のコードを持って、前後のAppDomain
- 22. 私は、次のFacebookのグラフ要求を持って
- 23. 多くのHTTPリクエストは、私は次のコードを持っているボトルサーバ障害
- 24. AngularJSは、私は(AngularJSコントローラ上の)次のJavaScriptコードを持って
- 25. コードは、私は次のコードを持っている別の1
- 26. 配置要素私は、次のコード持っている優先
- 27. `hash`は、私は次の行でスクリプトを持っているプロセス
- 28. は、私は、ログの完全なファイルを持っているログ
- 29. 活字体は、私は次のJavaScriptコードを持ってvalueAsDate
- 30. 私は次のコードを持って、前のページ
関数 'getActiveBill'と' getBillDetails'の定義を追加する必要があります。キーは、応答があるときにクリックが実行されるようにする関数を登録することです。リクエストを行う2つの関数を操作することで、それを実行できます。 – toraman