AMD(非同期モジュール定義)で「同期」が必要ですか?もしそうなら、この仕様を非同期にするのは何ですか?コードの途中でrequire()(まだロードされていない)を実行した場合、実行を停止しますか?話すブラウザ側。 requireJSについてはJavascript:AMD(非同期モジュール定義)で「同期」メソッドが必要ですか?
答えて
:
あなたはリソースが正常にロードされた時にトリガーされます.require()
に必要なモジュール、一緒コールバック方法を渡す必要があります。だからもちろん、そのコールバックの中でロードされたAMDまたはCommonJSモジュールにのみアクセスするべきです。 NodeJSため
:
はい、.require()
は同期動作しません。 NodeJSは、AMDではなく、CommonJSモジュールシステムを使用します。
ここには2つの異なるsynchronous
概念があります。 最初は "私のウェブページ全体を止め、ファイルを待っていますか?"
答えはいいえです。依存関係を持つスクリプトがある場合、RequireJSはそれを行いません。
適切に使用すると、約束システムが使用されます。 つまり、コールバックを送信してそのファイルの要件を定義すると、必要なファイルがすべてロードされるまでコールバックは実行されません。
これらの必要なファイルの1つが必要な場合は、THAT ITS依存関係がロードされるまでコールバックは実行されません。
最も外側のコールバック(通常はスクリプトの最下部にあるコールバック)は、内部にあるすべてのコールバックが実行されるまで実行されません。
これはpromiseシステムで動作します。 有望なシステムがどのように機能するかを理解することは価値があります(ある意味ではオブザーバーパターンに似ています)。 複数の人が何らかの順序でリスンするのではなく、イベントに基づいて回るか連鎖することを意図しています。
var widget = new Widget(),
widgetLoaded = widget.load(url); // return a promise to let the program use the widget
widgetLoaded.then(function() { widget.move(35); })
.then(function() { widget.setColour("Blue"); })
.then(function() { widget.show(); });
これは、呼び出しが実際にwidget.load()
が完了するまで発生しないことを除いて、this
あなたがチェーンの関数呼び出しをすることができるように返すようなものです。
widget
は実際にこのような状況が発生したときに、ウィジェットが読み込まれてすべて正常であればその約束を維持するか、何か問題が生じた場合にその約束を破ることによって制御します。
、.then
または何でも、彼らはそれを呼び出す、いずれか二つの機能とり(維持し、壊れた - 私のシステムでは、brokensは常にオプションである)、またはそれらをsuccess
を持つオブジェクトを取得し、failure
から$.ajax
がこれを行いますデータがロードされたときに何をしたいのか、失敗するのかを事前に決めることができます。
あなたのページは100%非同期で(UIを中断することなく)動作しますが、すべてのモジュールが正しい順序で起動するという点で100%同期しています。あなたのコードでこれらの依存関係を持っている場合、あなたは、インラインで実行するのを待って、スクリプトの一番下に転がって任意の依存関係を持つことはできません :あなた
ことの一つは、を覚えておく必要があります。 これらはすべてコールバック内でロックされるか、コールバックによって呼び出されるのを待っている関数内でロックされている必要があります。
それが実際の処理の点で非同期プロセスであり、そしてエトセトラ、ページのレンダリング、イベント/ JSを実行し、ブラウザをブロックしないので、これは単純です。
- 1. 非同期コールバックが必要ですか?
- 2. 非同期メソッドの非同期メソッド
- 3. 非同期メソッド非同期に新
- 4. 非同期ループ内の非同期メソッド
- 5. BitmapFrameを非同期で非同期メソッドで作成する
- 6. C#非同期サーバーソケット定義?
- 7. 非同期メソッドを同期する
- 8. 非同期メソッドを待つ必要がありますか?
- 9. 非同期メソッドを待つ必要がありますか?
- 10. RxJavaで非同期メソッドを同期する方法は? RxJavaの非同期ウォーターフォール
- 11. 非同期モジュール(async.waterfall)
- 12. Swift:非同期メソッドを同期メソッドでラップする方法は?
- 13. Webpackで同期が必要
- 14. 同期または非同期メソッド
- 15. .hide( "slow")は同期または非同期メソッドですか?
- 16. onSensorChanged(...)で同期が必要ですか?
- 17. 非同期メソッドでの非同期ライブラリメソッドの使用
- 18. 非同期メソッドで非同期呼び出しスタック
- 19. 非同期コードから非同期メソッドを呼び出す
- 20. ノード非同期の説明が必要
- 21. 非同期メソッドから同期メソッドを呼び出す
- 22. javascript - 同期モジュールと非同期モジュールの仕様は何ですか?
- 23. UIスレッドで同期メソッドを非同期で呼び出す
- 24. は非同期メソッド
- 25. セマフォ非同期メソッド
- 26. チェーン非同期メソッド
- 27. 「非同期キーワード非同期」関数を「非同期キーワード非同期」関数に変換できますか?
- 28. 非同期ですが非同期です
- 29. ジャスミンテストNode.js非同期モジュール
- 30. 非同期nodejsモジュールのエクスポート