Gulp verkleinern Sie mehrere js-Dateien zu einer

Lesezeit: 2 Minuten

Ich bin neu bei Gulp und frage mich, wie ich meine Sammlung in eine einzelne Datei verkleinern (verketten) kann, anstatt jede Datei einzeln.

Beispiel

var gulp = require('gulp');
var uglify = require('gulp-uglify');

gulp.task('minify', function () {
   gulp.src([
        'content/plugins/jquery/jquery-2.1.1.js',
        'content/plugins/jquery/jquery-ui.js',
        'content/js/client.js'])
      .pipe(uglify())
      .pipe(gulp.dest('content/js/client.min.js')) // It will create folder client.min.js
});

gulp.task('default', ['minify']);

Wie Sie sehen können, versuche ich, 3 Javascript-Dateien zu verkleinern und sie dann in eine auszugeben client.min.js. Ist es möglich?

Dieses Plugin wird helfen schluck-concat.

Verwendungszweck:

var concat = require('gulp-concat');

gulp.task('scripts', function() {
  gulp.src(['./lib/file3.js', './lib/file1.js', './lib/file2.js'])
    .pipe(concat('all.js'))
    .pipe(uglify())
    .pipe(gulp.dest('./dist/'))
});

  • also uglify macht js standardmäßig eine minifizierung?

    – Georg Pligoropoulos

    27. Mai 2015 um 17:39 Uhr

  • Funktioniert dies auch zum Verketten und Minimieren von CSS- und HTML-Dateien?

    – CSS

    10. August 2015 um 20:54 Uhr

  • @IamC.SS Ja, der gleiche Ansatz sollte funktionieren, aber anstatt zu hässlichen brauchen Sie zB. gulp-minify-css.

    – tuomassalo

    2. September 2015 um 9:51 Uhr

  • Besser zuerst uglifizieren (alle Dateien werden einzeln verkleinert, eine nach der anderen), dann zusammenfügen. Dadurch können einige Probleme im resultierenden Skript vermieden werden. Variante 2 – mit etwas Kleber zusammenfügen. Variante 3 – Google Closure Compiler verwenden, um beide Aufgaben zu erledigen.

    – SynCap

    24. August 2016 um 11:31 Uhr

  • Wenn ich eine hätte require von file1.js zu file3.js würde es nicht funktionieren, oder? (in Datei1.js require("./file3"))

    – peni4142

    12. Dezember 2018 um 15:45 Uhr

Anstatt viele knifflige Dinge durchzumachen, empfehle ich Ihnen, sich zurechtzufinden laravel-elixir. Es kompiliert sass, less, babel, coffescript und fügt sogar etwas hinzu, was Sie wollen, nicht nur mit JavaScript, sondern auch mit CSS. Der gesamte Code, den Sie benötigen, ist:

var gulp = require('gulp');
var elixir = require('laravel-elixir');

elixir(function(mix) {
    mix.scripts(['app.js', 'controllers.js', 'sweetalert.js'], 'public/js/all.js');
    mix.styles(['normalize.css', 'app.css', 'sweetalert.css'], 'public/css/all.css')
});

  • Overkill, besonders für Leute, die neu beim Schlucken sind.

    – mkvlrn

    22. Januar 2016 um 13:53 Uhr

  • Warum übertreiben? Es ist ein einmaliger Job auf Ihrem lokalen PC. Sie müssen sich keine Sorgen um die Client-Performance machen.

    – Cas Blume

    6. Juni 2016 um 8:42 Uhr

  • Elexir lebt in LaravelNur Medien von ! Es benötigt für die meisten Aufgaben eine exakte Infrastruktur.

    – SynCap

    20. August 2016 um 4:30 Uhr


  • und was ist mit der Leistung des Minifings. mit Schluck vergleichen

    – Sarkiroka

    18. Dezember 2016 um 13:27 Uhr

Lass es uns versuchen gulp-concat-util zum Beitreten Skripte. Es ist ähnlich wie concat, hat aber einige Helfer, um Dateien zusammenzufügen. Es gibt einen speziellen Helfer zum Verketten von Skripten.

var concat = require('gulp-concat-util');

gulp.task('scripts', function() {
  gulp.src(['./lib/file3.js', './lib/file1.js', './lib/file2.js'])
    .pipe(concat.scripts('all.js'))
    .pipe(uglify())
    .pipe(gulp.dest('./dist/'))
});

1055670cookie-checkGulp verkleinern Sie mehrere js-Dateien zu einer

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy