Sails.js v0.10 新しいプロジェクトを作成 --リンカーが機能しない Gruntfile.js は使用されません
質問
npm のデフォルトのバージョンの Sails (v.9?) --linker は正常に動作します。つまり、/linkerフォルダーを作成します。js、cssファイルをコピーできます assets/linker/
そして彼らは layout.ejs
自動的に。
現在、sails v0.10 がローカルとグローバルの両方にインストールされています。ノード V0.10.25 を使用します。以下を使用して新しい Sails プロジェクトを作成しました。
新しいプロジェクト名 --linker を帆します。
ただし、/linker フォルダーは作成されません。作成しなければならなかった /.tmp
それが存在しなかったので、私は作成しなければなりませんでした /.tmp/public/linker/
置く /js
& /styles
それらを手動で追加します layout.ejs
名前を変更しました Gruntfile.js
私のプログラムはまだ動作するため、Gruntfileはプログラム内で何も行いません。
解決
Sails v0.10 ではリンカー フォルダーが使用されなくなりました。混乱を招いただけでした。リンカー オプションを有効にしている場合は、 assets
フォルダーがコピーされます .tmp/public
Sails が持ち上げられたときに Grunt によってフォルダーが作成されます。パブリック フォルダーは必要に応じて Grunt によって作成されます。の grunt-sync
タスクは、プログラムが実行されている限りフォルダーの同期を維持します。
Sails プロジェクトは Grunt に依存していないため、Gruntfile の名前を変更しても (または完全に削除しても) プログラムの動作が停止することはありませんが、Gruntfile がそこにあるときに何もしないわけではありません。Grunt が何をしているかを確認するには、次のコマンドを使用して帆を持ち上げることができます。 sails lift --verbose
.
他のヒント
SGRESS454の回答として、.tmpフォルダが作成された理由は、EJSとLESS LESSファイルのようなファイルをブラウザが理解するフォーマットにコンパイルできます。Javaをコンパイルすると、Javaバイトコードに変換するような方法と似ています(ただ同じプロセスではありません)。サーバーを実行していないときは、必ずしも.tmpフォルダである必要はありません。これはGruntが作成され、ブラウザが読むものです。これが物事をもう少し明確にすることを願っています。