問題タブ [gulp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - Grunt や Gulp を使用して複数のファイルを監視し、(同じ方法で) 複数の出力に処理する方法は?
私は現在 Grunt を使用しており、Gulp を試していたときに、Grunt で最初に遭遇したのと同じ問題が発生しました。
いくつかの js ファイルを処理しようとしています (concat、uglify、および minify) が、それらすべてを 1 つの大きなファイルにコンパイルするのではなく、いくつかの入力ファイルの処理からそれぞれ複数の出力ファイルが必要です。
Gruntでそれを達成するために(今のところ)見つけた唯一の方法は、複数のウォッチと複数のuglifyタスク(または1つのuglifyタスクとウォッチ変更のリスナーを使用して、uglifyタスクのsrcとdestを動的に変更することです):
そして、ご想像のとおり、これは単なる例です。私の大きな Web アプリケーションの場合、出力される js ファイルは 3 つだけではなく、さらにいくつかのファイルをいくつかの css ファイルに処理します。
私の Gruntfile は非常に巨大で、多くの重複コードがあることがわかりました。このコードをリファクタリングして、ある種の依存関係を持つ自動的に推測される src と dest を使用して、1 つの watch タスクと 1 つの uglify タスクを作成する方法はありますか? four.js ファイルが変更された場合、3 番目の出力を処理する必要があります) ?
Gulp で何かできる方法があれば、喜んで引き受けます。通常のワークフローでテストしたいからです。
javascript - Gulp.js と sass-ruby プラグインを使用する必要な GEMS
輸入するとき
私のsassファイルでは、プリプロセッサが壊れて、見つからないと述べています。
私は宝石をチェックして(それらがインストールされているかどうかを確認するために)、以下のgulp.jsを使用してそれらを要求しました..
どんな助けでも大歓迎です。
gulp - gulp.watch がファイルを正しく処理しない
HAML と LESS を PHP と CSS に変換する単純なスクリプトを実行しています。また、gulp.watch を使用して、行ったすべての変更を確認しています。
問題: gulp-less と gulp-haml はファイルを正しく処理します。しかし、gulp.watch がファイルの変更を検出すると、ファイルは空になります。gulp.watch は、php ファイルを正常に作成したのとまったく同じタスクを使用しています。
javascript - Gulp.js: 変更された php/html ページをリロードする
wordpress 環境で基本的な gulp.js セットアップを実行しています。変更した .php ファイルをリロードする方法を除いて、すべてが思いどおりに機能します。私はそれを次のように設定しました:
基本的に、phpファイルが保存されるたびにページをリロードするだけですが、ファイルを保存するたびに、開いているかどうか、保存されているかどうか、またはその他のすべてのphpページが自動的に更新されます。
保存されたページのみをライブリロードする方法はありますか? これは、gulp で思いどおりに動作しない唯一のことのようです。ただし、うなり声よりもどれだけ速く実行されるかが気に入っています。
編集:@SirTophamHatt
gulp - gulp.src() で現在のファイル名を取得する
私の gulp.js ファイルでは、すべての HTML ファイルをフォルダーからexamples
フォルダーにストリーミングしていbuild
ます。
gulp タスクを作成するのは難しくありません。
しかし、タスクで見つかった (および処理された) ファイル名を取得する方法がわかりません。または、適切なプラグインが見つかりません。
javascript - gulpjs を使用してコンパス sass をコンパイルする方法
gulpjs を使用してコンパス インポートを含む sass をコンパイルするのが難しいため、config.rb コンパス ファイルを含むいくつかの記事を読みましたが、grunt の場合はこれを行う必要がないので、これが完全に必要かどうか疑問に思っていました。
これは、これに関する私のコンパス gulp エントリです。
これに対する私の通常のうなり声は次のとおりです。
誰かが私が何をする必要があるかを説明するのを手伝ってくれるなら、それは素晴らしいことです
javascript - gulp-browserify で複数のファイルを監視し、1 つのみを処理するにはどうすればよいですか?
ソースファイルが変更されるたびに、バンドルを接続して再構築しようとしてgulp-browserify
います。gulp-watch
ただし、gulp-browserify
コンパイルには単一のエントリ ポイントが必要であり (例: src/js/app.js
)、すべての依存関係自体をフェッチします。
ただし、gulp-watch
エントリ ポイント ファイルのみが監視されているため、変更のたびに再構築に失敗します。私が実際に必要としているのは、複数のファイルを監視し、エントリ ポイント ファイルのみを処理する可能性です (を探しますreplaceEverythingWithEntryPointFile
)。
問題はgulp-browserify
、エントリ ポイント ファイルを指定して、ソース ファイルの変更時に再構築をトリガーするにはどうすればよいかということです。ソリューションにスロットリングが含まれているとよいでしょう。起動時に、すべてのソース ファイルが監視用に設定されているため、エントリ ポイント ファイルがファイルgulp-browserify
の数だけパイプされますが、これは不要です。
javascript - browserify-shim がすべての shim を要求しないようにするにはどうすればよいですか?
プロジェクトで browserify と browserify-shim を使用しており、gulp-browserify を使用して gulp を実行しています。
このセットアップは正常に機能し、ほとんどの部分で意図したとおりに機能します。ただし、Browserify は、require() によって呼び出されるライブラリがない場合でも、常にすべての shimmedライブラリをビルドに含めます。
このトピックに関するドキュメントは存在しないようです。これを防ぐ方法はありますか?私には非常に直感に反するように思えます.ビルドには、実際に必要なものだけを含める必要があります。
(更新:napa/npmを使用してangularおよびその他のライブラリをインストールしました)