問題タブ [gulp-4]

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.

0 投票する
1 に答える
139 参照

npm - この gulp スクリプトの動作が v4.0.0-alpha.2 と v4.0.2 で異なるのはなぜですか?

このスクリプトは gulp 4.0.0-alpha.2 を使用していますが、このスクリプトはもともと 3.x 用に作成されたものではないかと思います。

次のタスクが存在する、継承した gulp スクリプトがあります。

(渡された値は.src.destもともと他の場所から取得されたものですが、それらを変更するコードはないようです)

app\imagesフォルダーには、複数のiconsファイルを含むサブフォルダーが含まれています。gulp スクリプトの結果は次のとおりです。

  • では、これら4.0.0-alpha.2のファイルは次の場所に配置されます.dev\images\icons
  • では、これら4.0.2のファイルのペースが調整されます.dev\images\app\images\icons

以前はグロブからの相対パスのみだったのに対し、現在は 2 つのフル パスが連結されているようです (つまり、app\images\**\*.*見つかっapp\images\icons\icon1.pngたときに が返されicons\icon1.pngます)。

base呼び出し時にオプションに渡すと、srcこれが解決されるようです。

これは、異なるベースパスを持つパスの配列が渡されるケースを解決しません。例えば:

また、 のすべての呼び出しを更新する必要がない、より一般的なソリューションが利用可能であるように思われるsrcので....

宛先への書き込み時にグロブのみ、またはファイルの名前が使用される Gulp 4.0 を使用して同じ動作を取得するにはどうすればよいですか?


最小限の再現gulpfile.js:

そしてpackage.json

app\images\androidとの下にファイルがありますapp\images\apple(それぞれに 2 つ)

gulp@4.0.0-alpha.2(予想/望ましい) の結果:

  • .dev\images\android\1.png
  • .dev\images\android\2.png
  • .dev\images\apple\1.png
  • .dev\images\apple\2.png

結果gulp@v4.0.2(予期しない):

  • .dev\images\app\images\android\1.png
  • .dev\images\app\images\android\2.png
  • .dev\images\app\images\apple\1.png
  • .dev\images\app\images\apple\2.png
0 投票する
3 に答える
669 参照

gulp - gulp-4 に browser-sync を追加する方法

//変数へのgulpファイルのインポート

// プロジェクト フォルダー内のファイル パス変数

//Sass タスク

//JsTask

//WatchTask

//DefaultTask //gulp-4 で browser-sync を使用する方法がわかりません

0 投票する
1 に答える
394 参照

javascript - Gulp.js を使用して単一の JS ファイル内の複数の CommonJS モジュールを結合するにはどうすればよいですか?

私はさまざまな実装に Gulp.js を使用してきました。そのうちのいくつかは、単一の JavaScript ソース ファイルのプレーンで単純な縮小のみであり、いくつかは複数のファイルの縮小とコピーであり、他のものは browserify を使用して結合していました。相互に依存する複数のファイルを 1 つの縮小されたファイルに変換します (オプションで、変換のために間に Babel を使用するなど)。

しかし最近、私の実装ではカバーしたことがない (私にとって) ユニークなシナリオに出くわしました: 複数の CommonJS モジュール ファイルを 1 つの縮小されたビルド ファイルに連結することです。

次の例を検討してください。

次の内容で名前が付けられた共通ファイルがありますcommon.js-

そして、index.jsこのファイルが公開する関数の1つを使用する別のもの(たとえば)があります-

index.jsエントリとして提供するときに両方のファイルを連結する方法はありますか? ES6 モジュールや AMD の場合でも、browserify を使用できたはずです。まだ試したわけではありませんが、ブラウザーで決して実行されないものに使用するのは奇妙に思えます。

どんな助けでも大歓迎です。