私はYUIの初心者なので、ほんの数日前にこれを使用しています。
したがって、YUIインスタンスには、「io-base」、「node」、またはその他のモジュールなどの特定のモジュールが含まれます。
次に、io()、Node()、on()などのメソッドを使用できます。
質問1:誰かがそれが正確にどのように機能するか教えてもらえますか?そして、jQueryのようなシードファイルを含めた後、yuiはオフラインで動作しますか?
質問2:このyuiは小さなプロジェクトに役立ちますか?
YUI の心臓部はローダーです。基本的に、ローダーはダウンロードするか、YUI のすべてのモジュールを記述する JSON 構造と共に出荷されます。'node' や 'io-base' などをリクエストすると、Loader は指定したモジュールのメタデータを検索し、現在モジュール レジストリに登録されていない依存関係を収集し (これについては後で詳しく説明します)、再帰的に動作します。ロードする必要があるモジュールの完全なセットの依存関係チェーンをアップします。次に、それらのモジュールに対して HTTP 要求を発行します。「コンボ ハンドラー」(基本的には、サーバー上のファイル連結サービス) がない場合、ローダーは各ファイルを個別に要求しますが、コンボ ハンドラーを使用すると、それらのファイルをバッチで要求できます。
すべての YUI モジュールは、YUI.add() ステートメントでラップされています。このメソッドは、モジュールをセットアップするセットアップ関数を受け取り、関数に渡された「インスタンス オブジェクト」で公開したいコードを公開します。慣例により、このインスタンス オブジェクトは「Y」と呼ばれます。YUI.add が実際に行うことは、上記のモジュール レジストリにモジュールを配置することです。そのため、Loader が YUI.use() に提供されたコールバックを呼び出す前に、必要な各モジュール セットアップ関数を実行して、環境が何に基づいて適切に構成されているかを確認できます。あなたが要求しました。
このサンドボックス モデルでは、各モジュールは、各モジュールから必要な機能を公開するインスタンス変数を使用して関数内にセットアップされ、最終的に「use」に指定したコールバックに渡され、YUI の複数のインスタンスを同じページで実行できます。 、ページ上の他のインスタンスから完全に隔離されています。(注意: 各サンドボックスには独自のモジュール セットがあるため、これは一般的には良い考えではありません。多くの冗長なメモリを使用することになりますが、それでも有用な場合があります。一般的には推奨されていないか、必要ではありません)。
シード ファイルのみを含める場合、シード ファイルにはモジュールが含まれていないため、YUI はインターネット接続なしでは機能しません。この環境で YUI を使用する方法はいくつかあります。
YUI は、大小を問わず、あらゆるプロジェクトで使用できます。確かに、大規模なプロジェクトで最も顕著なコード編成とパターン化の利点がありますが、ライブラリは、Loader のかなり単純なインターフェイスを通じて、プロジェクトの複雑さに合わせて「スケーリング」できます。
ローダーの設定方法や内部で何が起こっているかについてもっと詳しく知りたい場合は、私はYUIConf 2011 でこのテーマについて講演しましたが、警告しますが、それはすでに YUI に精通している人々を対象としていました。ロード用に独自のモジュールを構成しようとしていました。