2017-02-21 2 views
0

私はうなり声を学ぶためにしようとしていると私はうなり声の文脈で以下のエンティティとの関係を理解し​​ようとしています:、いくつかの基本的なイサキの用語を理解しようとするエンティティと関係

  • プラグイン
  • タスク
  • node_modules

私はgruntfile.jsで既存のプロジェクトを検討しています。

grunt.loadNpmTasks('grunt-contrib-sass');  

親プロジェクトの構造には、grunt-contrib-sassのフォルダがあるnode_modulesディレクトリがあります。 grunt-contrib-sassサブディレクトリ全体を「プラグイン」と呼びますか、または「プラグイン」はこのディレクトリのサブセットを指しますか?

grunt-contrib-sassディレクトリには、ネストされたnode_modulesサブディレクトリがあります。ネストされたnode_modulesサブディレクトリには、grunt-contrib-sassの登録済みの依存関係が含まれていると仮定しています。これは正しいです?

grunt-contrib-sassディレクトリには、sass.jsファイルを持つtasksサブディレクトリがあります。このディレクトリには、check.jsファイルを含むlibサブディレクトリがあります。 libサブディレクトリは、主要なgrunt jsモジュール/タスクのサポートjsファイルを保持するために使用されていますか?

sass.jsがtasksサブディレクトリにあるので、これは「サスの仕事」とみなされています。これは正しいです?このタスクはモジュールとも呼ばれますか?または、モジュールは親のnode_modulesディレクトリを参照していますか?

私は、サンプルコードコードがnode_modules \ grunt-contrib-sassのtasksサブディレクトリからすべてのjsモジュール/タスクをインポートすると仮定しています。これは正しいです?

答えて

0

Gruntは、Node.js Javascriptランタイムエンジン用のモジュールです。したがって、GruntとNode.jsに関連する用語が混在しています。

node_modulesフォルダは、Node.jsモジュールが依存関係を格納する場所です。依存関係がpackage.jsonファイルに記述されている場合、ノードパケットマネージャnpmは、これらのファイルをこのフォルダにインストールします。

グランツには、グランタタスクの実行可能コードが提供されるtasksフォルダがあります。プロジェクトのベースフォルダにあるGruntfile.jsは、grunt.registerTask()で定義されたタスクを実行するように設定します。しかし、あなたのプロジェクトにはタスクがある必要はありません。これまでのように、grunt-contrib-sassのようなプラグインを利用することもできます。

Gruntがgrunt.loadNpmTasks('task-module')コマンドを検出すると、node_module/task-module/tasksフォルダーが検索されます。そこに.jsファイルがロードされ、コマンドgrunt.registerTask('myTask', function ...)が出たら、そのタスク関数を登録します。プロジェクトGruntfile.jsで定義されているグローバルコンフィグレーションオブジェクトのmyTaskエントリをパラメータとして実行されます。

プラグインが複数のタスクを定義することは全く可能ですが、モジュールごとに1つだけ定義することは明らかです。これとは対照的に、あなたのプロジェクトは複数のタスクを利用します(またはそれ自身を定義します)。

grunt myTask --verboseコマンドを実行すると、コマンドラインで直接ロードプロセスを実行できます。再開する

  • グラントが単調負荷指令言及と通常が登録機能(とおりであるtasksサブフォルダ
  • タスクを有しているのNode.js モジュールあるプラグインGrunt APIで説明されています)を、プロジェクト自体のGruntfileまたはGruntがスキャンするすべてのサブフォルダのすべてのファイルに保存します。
  • node_modulesは、Node.jsのモジュールの依存関係がすべてに保存されているフォルダです。
+0

素晴らしい答え!どうもありがとうございます! – details1

関連する問題