gulp-load-plugins не загружает плагины

gulp-load-plugins не загружает никаких плагинов. Кто-нибудь может подсказать, почему это может быть?

Node: v0.12.0
NPM: v2.7.3

мой package.json:

{
  "name": "foo",
  "version": "0.0.1",
  "dependencies": {},
  "devDependencies": {
    "gulp": "^3.8.11",
    "gulp-load-plugins": "^0.9.0"
  }
}

мой gulpfile.js:

var gulp = require('gulp');
var gulpLoadPlugins = require('gulp-load-plugins');
var plugins = gulpLoadPlugins();

console.log(JSON.stringify(plugins)); // {}

gulp.task('default');

3 ответа

Установите другие плагины gulp.

ТЛ; др

Если это ваше полное package.jsonПохоже, у вас не установлены другие плагины gulp.

Допустим, следующее ваше package.json:

package.json

{
  "name": "foo",
  "version": "0.0.1",
  "dependencies": {},
  "devDependencies": {
    "gulp": "^3.8.11",
    "gulp-load-plugins": "^0.9.0",
    "gulp-rename": "^1.2.0",
    "gulp-concat": "^2.5.2"
  }
}

Вы $ npm install все, тогда...

gulpfile.js

var gulp = require('gulp');
var gulpLoadPlugins = require('gulp-load-plugins');
var plugins = gulpLoadPlugins();

// `plugins.rename` should exist
// `plugins.concat` should exist

console.log(JSON.stringify(plugins));

gulp.task('default');

Попробуйте установить для отложенной загрузки значение false.

var gulp = require('gulp');
var plugins= require('gulp-load-plugins')({lazy:false});

console.log(JSON.stringify(plugins));

gulp.task('default');

И, как уже упоминалось, установите несколько плагинов.

Позвольте мне показать вам, что у меня есть и как я это делаю, может быть, это поможет.

мой package.json:

{
  "dependencies": {
    "gulp": "*",
    "gulp-autoprefixer": "*",
    "gulp-html-validator": "0.0.5",
    "gulp-image-optimization": "^0.1.3",
    "gulp-plumber": "*",
    "gulp-rev-collector": "^0.1.4",
    "gulp-rev-manifest-replace": "0.0.5",
    "gulp-ruby-sass": "*",
    "gulp-sass": "*",
    "gulp-scss-lint": "^0.1.10",
    "gulp-sourcemaps": "*",
    "imagemin-optipng": "^4.2.0",
    "imagemin-pngquant": "^4.0.0",
    "vinyl-paths": "^1.0.0"
  },
  "devDependencies": {
    "del": "^1.1.1",
    "gulp-cached": "^1.0.4",
    "gulp-concat": "^2.5.2",
    "gulp-cssmin": "^0.1.6",
    "gulp-filesize": "0.0.6",
    "gulp-gzip": "^1.0.0",
    "gulp-htmlhint": "0.0.9",
    "gulp-htmlmin": "^1.1.1",
    "gulp-if": "^1.2.5",
    "gulp-imagemin": "^2.2.1",
    "gulp-load-plugins": "^0.8.0",
    "gulp-rename": "^1.2.0",
    "gulp-rev": "^3.0.1",
    "gulp-uglify": "^1.1.0",
    "gulp-useref": "^1.1.1",
    "gulp-webserver": "^0.9.0",
    "run-sequence": "^1.0.2"
  }
}

Как я бегу gulp-load-plugins:

 'use strict';
    var gulp = require('gulp'),
          $ = require('gulp-load-plugins')({
            pattern: ['gulp-*', 'gulp.*'],
            replaceString: /\bgulp[\-.]/,
            lazy: true,
            camelize: true
          }),

И это пример плагина:

 // html optimization 
      gulp.task('htmloptimize', function () {
          return gulp.src(dev.html) 
            .pipe($.htmlmin({
              collapseWhitespace: true
            }))
            .pipe(gulp.dest(dist.dist))
      });

Как видите, все мои каналы называются.pipe($. Plugin()), что означает $ обозначает gulp-. Если у вас есть плагин с именем gulp-name-secondname, вы называете его так: .pipe($. NameSecondname()) .

Сверху, где мне нужны плагины gulp-load-plugins, я установил верблюд в значение true. Ленивая загрузка загружает только те плагины, которые вы используете, не все из них.

Осторожнее с gulp-load-plugins, потому что это замедляет ваши задачи, например, я запускаю gulp-webserver, когда я использую его с gulp-load-plugins, задача завершается через 200 мс против 20 мс, если я использую ее нормально. Так что не используйте со всем, поиграйте с ним, посмотрите, сколько производительности вы теряете в каждой задаче и расставьте приоритеты.

Другие вопросы по тегам