問題タブ [gulp-watch]
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.
git - gulp タスクは、gulp.watch タスクが実行されているかどうかをどのように知ることができますか?
チェックアウトを実行する gulp git タスクがあるため、現在の作業ディレクトリが変更されます。
また、変更されたファイルを再コンパイルする gulp 監視タスクもあります。
ウォッチタスクが実行されている場合、gitタスクを実行したくありません..新しいブランチでファイルを再コンパイルします。
gulp 監視タスクが実行されているかどうかを検出する方法はありますか? その場合は、警告メッセージを表示して git タスクを終了できます。
gulp - Gulp パッケージの JSON
GULP を使用してデモを作成しましたが、gulp js ファイルを実行する際に問題に直面しています。
インストールのプロセス:
コンソール警告:
パッケージ.JSON:
Gulp.js ファイル。
今、コマンド「gulp」を使用して、gulp js ファイルを実行しようとしている場合。次に、次のようなエラーが表示されます。
gulp - ソースファイルが変更された場合にのみ連結するGulpタスクパイプライン
連結された JS ファイルを生成する gulp タスクがあります。プロジェクト内のすべてのファイルへの変更を検出するためにウォッチを使用しています。最後の実行以降にソース ファイルが変更された場合にのみ、concat タスクでファイルを再連結したいと考えています。
注: より具体的な監視コマンドを使用することもできますが、実際の本番環境では、ソース JS ファイルの複数の組み合わせから複数の連結された JS ファイルを生成しているため、これらのそれぞれに対して監視とタスクを作成するのははるかに複雑です。
このようなもの:
最後の 2 つのステップで lazypipe を使用することを考えたので、ファイルがある場合にのみ concat と dest を実行しますが、次の方法がわかりません。
- パイプラインにまだファイルが残っているかどうかに基づいて条件を実行します (cache() の後)
- すべてのソース ファイルを元に戻します (基本的に、gulp.src() を再発行してストリームを再準備します)。
2 番目の部分に gulp-remember を使用できることはわかっていますが、本番環境では、可能であればストリームを再構築するだけの方がはるかにクリーンです。
以前にこれをやった人はいますか、どこから始めるべきかについてのヒントはありますか?
build - gulp ファイルが変更されたときに GulpJS ウォッチを自動的に再起動する
gulp ウォッチを実行していて、ファイルをタスクに追加するとします。タスクに変更があるため、gulp 監視プロセスを自動的に再起動する方法はありますか?
javascript - Gulp Watch Concat が一部の JS ファイルを無視することがある
いくつかの JS ファイルを連結するための Gulp concat ウォッチ タスクのセットアップがあります。
ごく普通の設定だと思います。いずれかのスクリプトが変更されるたびにmain.js
、スクリプトをその順序で連結することによって が作成されます。99% の確率で正常に動作します。
しかし、場合によっては、おそらくランダムに、連結によって 1 つ以上のファイルが除外されることがあります。scriptB.js
たとえば、編集して保存してから、 、およびmain.js
のみを連結して確認します。C と D を完全に除外しました。C だけの場合もあれば、D の場合もあれば、A の場合もあります。ランダムです。除外されたファイルには何もしませんでした。エディターで開いていますが、変更されておらず、ただそこに座っています。Gulp は、ランダムな理由でそれを除外することがあります。scriptA
scriptB
scriptE
私がそれを修正する方法は、省略されたスクリプトを開き、ランダムな行または何かの最後にスペースを追加して保存することです。その後、main.js
期待どおりに連結されます。ファイルに問題はありませんでした。保存し直すしかありませんでした。
これは誰の知る限りでも未解決のバグですか? このバグに関する情報はどこにも見つかりませんでした。この問題をデバッグまたはログに記録して、再現方法を見つけるためにできることはありますか?
私が気づいたことの 1 つは、編集scriptC
して保存したとしましょう。その後、通知scriptD
がありませんでした。に戻っscriptC
て再度保存すると、scriptD
まだ連結されていません。scriptD
強制的にmain.js
. したがって、問題のポップアップが表示されたら、通常はこの方法で再現できます。
通常、これは 20 回の保存で約 1 回しか発生しません。
composer-php - gulp を使用して composer パッケージの更新を監視するにはどうすればよいですか?
Composer は依存関係の管理には優れたツールですが、ローカル開発の場合、ビルドを更新するために実行し続けるには時間がかかる場合があります。シンボリック リンクなど、これを回避する方法はありますが、gulp などのビルド ツールを使用すると、ローカル ライブラリへの変更を監視するためのより良い方法があるはずです。
ローカル ライブラリを監視することは理にかなっていますが、composergit
は作業ディレクトリの現在の状態ではなく、最新のコミットに基づいて更新の決定を行います。gulp watch
タスクで依存関係を更新するにはどうすればよいですか?
node.js - gulp.watch エラー: 終了後に書き込みます
gulp.watch
命令ごとに異なる結果が得られwatch
ます タスクを実行してファイルを変更すると.html
、すべてが正しく機能します (以下に定義するタスク)
しかし、他のファイル (.coffee、.less など) を変更すると、次のエラーが発生します。
監視タスク
テンプレート タスク
Phnxjs タスク
node.js - gulp-sftp を使用して変更されたファイルのみをアップロードする
私はgulpで次のタスクを持っています:
config.layout.frontend.distDir の値は「httpdocs」です。
問題は、ファイルが変更されているかどうかに関係なく、ファイルがアップロードされていないことです (デフォルトで gulp-changed の hasChange オプションを残そうとしました。常に次の出力が得られます。
何か案は?