tasks/ ディレクトリは、Gruntタスクとその設定をまとめたもので、便利に利用できます。Gruntの統合は主にフロントエンドのアセット(スタイルシート、スクリプト、マークアップテンプレートなど)をバンドルするのに役立ちますが、browserifyのコンパイルからデータベースの移行まで、あらゆる種類の開発タスクを実行するためにも使用できます。
Grunt を使ったことがない場合でも問題ありません。多くの一般的なユースケースでは、このフォルダー内のファイルをカスタマイズしたり、見たりする必要もありません。何かをカスタマイズする必要がある場合は、Getting Started ガイドを確認してください。ここでは、Gruntfile のような基本的な概念や、Gruntプラグインのインストールと使用方法について説明しています。そのプロセスに慣れたら、読み進めてください。
Sailsにバンドルされているアセットパイプラインは、プロジェクトの一貫性と生産性を高めるように設計された、慣習的なデフォルト設定を持つGruntタスクのセットです。
Sailsにおけるフロントエンドのアセットワークフロー全体は完全にカスタマイズ可能です。Sailsは、すぐに使えるいくつかの提案を提供しますが、アプリケーションのブラウザベース/フロントエンド部分を構築する際に遭遇するすべてのニーズを予測できると主張するものではありません。そもそも、ブラウザ用のアプリを構築していると誰が言えるでしょうか?
Sailsは、特定のコマンドを実行すると、これらのタスクの一部(tasks/register/フォルダー内の特定のタスク)を自動的に実行します。
sails liftdefault タスクを実行します(tasks/register/default.js)。
sails lift --prodprod タスクを実行します(tasks/register/prod.js)。
sails wwwbuild タスクを実行します(tasks/register/build.js)。
sails www --prod (本番環境)buildProd タスクを実行します(tasks/register/buildProd.js)。
これらのGruntタスクは、要件に合わせて変更、省略、または置き換えることができます。独自のGruntタスクを追加することもできます。新しいタスクを設定するには、grunt/config ディレクトリに someTask.js ファイルを追加し、適切な親タスクに登録してください(grunt/register/*.js のファイルを参照)。
いいえ!Sailsコアチームは、実世界のプロジェクトでGruntを4年以上使用しており、全体的に素晴らしいツールです。しかし、すべての人に適しているわけではないことも認識しています。SailsでのGruntの統合を無効にするには、Gruntfileを削除するか、Gruntフックを無効にするだけです。
大丈夫です!Sailsのコアテナントはクライアント不可知論です。特に、あらゆる種類のクライアントで使用されるAPIを構築するように設計されています。ネイティブAndroid/iOS/Cordova、サーバーサイドSDKなどです。
こちらの指示に従って、Gruntを完全に無効にできます。
他の目的でGruntを使用したいが、デフォルトのWebフロントエンドのものは不要な場合は、プロジェクトの assets フォルダーを削除し、grunt/register および grunt/config フォルダーからフロントエンド指向のタスクを削除してください。また、sails new myCoolApi --no-frontend を実行して、今後のプロジェクトで assets フォルダーとフロントエンド指向のGruntタスクを省略することもできます。sails-generate-frontend モジュールを代替のコミュニティジェネレーターに置き換えることも、独自に作成することもできます。これにより、sails new でネイティブiOSアプリ、Androidアプリ、Cordovaアプリ、SteroidsJSアプリなどのボイラープレートを作成できます。
Webフロントエンドが絶対に不要な場合は、
--no-frontendを指定して新しいSailsアプリを生成することもできます。
Gruntを使用して静的アセットを操作する方法の詳細:https://grunt.dokyumento.jp/configuring-tasks