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. C#非同期サーバーソケット定義?
- 3. 非同期メソッドを待つ必要がありますか?
- 4. onSensorChanged(...)で同期が必要ですか?
- 5. UIスレッドで同期メソッドを非同期で呼び出す
- 6. 非同期nodejsモジュールのエクスポート
- 7. 非同期メソッドから非同期メソッドを呼び出す方法
- 8. タスクベースの非同期メソッドのコールバックを定義する場所
- 9. スレッドからのNSURLConnection同期要求と非同期要求
- 10. 非同期イベントの同期
- 11. リクエストレスポンモデル/同期/非同期/イベントドリブン
- 12. 非同期ソケットと同期
- 13. AJAXが同期Vs非同期を要求します
- 14. RubyCocoaの非同期メソッド
- 15. Azure TableServiceContext - 非同期AddObjectメソッド?
- 16. のXmlWriter非同期メソッド
- 17. 非同期メソッドのコードカバレッジ
- 18. 非同期メソッドを待つ
- 19. スレッドセーフな非同期メッセージキューが必要です
- 20. 春非同期 - 非同期豆に
- 21. データベーストリガー、非同期ですか?
- 22. 非同期に同期メソッドを呼び出す
- 23. 非同期mvc .net:非同期メソッドからビューを返す方法
- 24. iPhone SDKの同期要求または非同期要求
- 25. 私の非同期コードをsetTimeoutと同期させる。私は約束が必要ですか?
- 26. 部品番号は、非同期メソッドが
- 27. コアデータのManagedObjectContext.ExecuteFetchRequestを非同期で非同期にする方法
- 28. 不要な非同期イベントディスパッチ
- 29. ASP.NET非同期要求コールバック
- 30. Javamailは非同期か同期ですか?