0

TL、DR: アルファベット順に関する Meteor の仮定とは無関係に css および javascript ファイルをロードする方法 (実際の動作とはかけ離れています)。

Stackoverflow は、この質問は主観的かもしれないと言っていますが、そうでないことを願っています。

Meteor はアルファベット順 (およびその他の規則) に基づいてファイルをロードします。
したがって、強制的に CSS ファイルと JS ファイルを希望の順序でロードするには、ロード順序を示す数字でフィールドを開始する必要がありました。jquery.jsとがある場合bootstrap.js、Meteor は のbootstrap.js前にロードされますjquery.js。ただし、ブートストラップは jquery に依存するため、jquery を最初にロードする必要があります。

これを解決するためのオプションは次のとおり
です。 1. ファイルをpublicディレクトリに配置し、手動でロードします。text/htmlしかし、Meteor がMIME タイプのファイルを送信しているように見えるため、これは機能しませんでした。
2. Meteor パッケージを作成し、そこからロード順序を指定します。これは、CSS と Javascript をロードするためだけにハエをハンマーで叩くようなものだと思います。
3. すべてのファイルの前に番号を付けます。前の例では、ブートストラップの前に jquery をロードするために、フィールドの名前を1.jquery.jsandに変更2.bootstrap.jsしました。

私はMeteorを初めて使用するので、これに関する推奨されるベストプラクティスがあるかどうか疑問に思っています. javascriptにAMDを使おうと思っていたのですが、それはjavascriptに限られています。

4

1 に答える 1

1

これは興味深い質問であり、これはおそらく Meteor アプリを作成する際の落とし穴の 1 つです。

明示的なパッケージの作成やファイルの名前変更など、使用可能なすべてのソリューションについて言及しました。

私が考える最良の方法は、大気パッケージを使用することです。たとえば、ブートストラップを追加すると、jquery は依存関係にあるため、常に最初にロードされます。読み込み順序に関係するほとんどの js ライブラリは、通常、環境にあります。

大気パッケージがない場合のもう 1 つの最善の方法は、ロード順序を示すために js ファイルの前に番号を付けることです。

1 つのことは/public、ファイルがマップされるフォルダーを使用する場合です/。そのため、/public を使用してルート html ファイルで、必要な順序で手動で js ファイルを自分でロードできます。Meteor は、text/html MIME タイプをそのバージョンの404 file not found エラー. ファイルが本番環境で分離されており、どちらか一方が読み込まれない場合に問題が発生する可能性があるため、この方法は少し面倒です。

于 2015-02-05T11:48:04.913 に答える