現在、<%- assets.js() %>
すべてのページにすべての JavaScript ファイルを含めるために使用しています。したがって、すべての関数がすべてのページで初期化されることを意味します。
特定の Web ページで JavaScript ファイルを無効にするにはどうすればよいですか? または、特定の Web ページにすべての JavaScript ファイルではなく一部の JavaScript ファイルを含める方法がある場合。
現在、<%- assets.js() %>
すべてのページにすべての JavaScript ファイルを含めるために使用しています。したがって、すべての関数がすべてのページで初期化されることを意味します。
特定の Web ページで JavaScript ファイルを無効にするにはどうすればよいですか? または、特定の Web ページにすべての JavaScript ファイルではなく一部の JavaScript ファイルを含める方法がある場合。
Sailsjs のリーダーはこの問題に答えました (ただし、CSS ファイルの選択に関するものでした)。
「今のところ、(a) 常にすべてのスタイルを取り込み、関連するスタイルのみを適用することができます (b) 別のツール (Grunt など) を使用して、バニラの node.js プロジェクトで行うようにアセットをバンドルするか、(c)スタイルシートを手動でリンクしてください (パブリック フォルダーに配置してください)。」
同様の、より複雑な質問が Google グループで行われています: https://groups.google.com/forum/#!topic/sailsjs/yt9EpJlfzXA
上記を考慮して、ページごとに個別の layout.ejs を用意することをお勧めします。各ページに必要なlayout.ejsを指定できます
res.view({ layout: "different_layout" })
layout.ejs は、(a) assets.js() を呼び出さずに、必要なすべての js ファイルに対して < script > を使用するか、(b) assets.js() を呼び出して ./assets/js 内のすべての共通 js ファイルを提供します。さらに < script > を追加して、別の場所にあるページに依存するものを提供します。
指定したファイルを除くすべてのアセットを含めることができる assets.js() のラッパーがあります。これを使用して、特定のアセットのみを別の場所に含めることもできます。そのため、共通のアセットをレイアウトにロードし、必要なページにのみ他のアセットを含めることができます。
SailsJS に javascript アセットを選択的に含めるにはどうすればよいですか?に対する私の回答を参照 してください。