私はいくつかのnpmモジュールを持っていますが、これは一般的なリンキング設定を使用したいと思います。私はjshintを持っていて、Gruntを介して単一のプロジェクトに取り組んでいます。しかし、プロジェクトごとに.jshintignoreファイルと.jshintrcファイルをコピー/貼り付けすることは、特に何かを変更する必要がある場合には扱いにくくなります。だから、理想的に私は、共通の構成をカプセル化し、grunt-my-common-lint-tasks
が本当にjshintとクロージャリンターの両方のためだけに特定のデフォルト設定であるGrunt:別のマルチタスクプラグインとして2つのマルチタスクを作成するには?
grunt.loadNpmTasks('grunt-mysuperlint');
介してロードすることができ、単一の単調なタスクを持っているしたいと思います。
しかし、唯一の本当の構成がオプションとターゲットのマージである2つの既存のグラントプラグインを1つに構成する方法はありません。
これは可能ですか?
grunt.registerMultiTask('mysuperlint', function() {
// Manual options merging?
var opts = this.options({
jshint: { src: 'scripts/**/*.js', options: { ... } },
closureLinter: { src: 'scripts/**/*.js', options: { ... } }
});
grunt.config.set('jshint.dev', opts.jshint);
grunt.config.set('closureLinter.dev', opts.closureLinter);
grunt.task.run('jshint:dev');
grunt.task.run('closureLinter:dev');
});
任意のヘルプやポインタが本当にいただければ幸いです。
は、私のような何かを行うことになっています。
基本的にこのスニペットはきれいに見えます。何が問題ですか? –
当時はとてもハッキリだったようです。 – Andrew
残念ながら、彼らはまだ良いAPIを構築していませんでした。次のより大きなリリースのための議論にあった –