2015-03-26 7 views
3

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'); 

ответ

10

Установка других плагинов глотком.

Т.Л., др

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

Позволяет сказать следующее является вашим 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'); 
+0

Я бы предложил console.log (Object.keys (плагины)); вместо этого не взорвать консоль и получить список загружаемых файлов. –

4

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

Мои 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. Ленивая загрузка загружает только плагины, которые вы используете не у всех из них.

Осторожнее с глотком-багажных плагинов, так как он замедляет свои задачи, например, я запустить Глоток-веб-сервер, когда я использую его с глотком-багажных плагинов задача заканчивается после того, как 200мс против 20мс, если я использую это нормально. Поэтому не используйте все, играйте с ним, посмотрите, сколько производительности вы теряете для каждой задачи и расставляете приоритеты.

7

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

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

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

gulp.task('default'); 

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