首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >gulp load- plugins不加载插件

gulp load- plugins不加载插件
EN

Stack Overflow用户
提问于 2015-03-27 05:06:47
回答 3查看 15.3K关注 0票数 5

gulp-load-plugins未加载任何插件。有没有人能告诉我为什么会这样?

代码语言:javascript
复制
Node: v0.12.0
NPM: v2.7.3

我的package.json

代码语言:javascript
复制
{
  "name": "foo",
  "version": "0.0.1",
  "dependencies": {},
  "devDependencies": {
    "gulp": "^3.8.11",
    "gulp-load-plugins": "^0.9.0"
  }
}

我的gulpfile.js

代码语言:javascript
复制
var gulp = require('gulp');
var gulpLoadPlugins = require('gulp-load-plugins');
var plugins = gulpLoadPlugins();

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

gulp.task('default');
EN

回答 3

Stack Overflow用户

发布于 2015-03-27 05:35:35

安装其他gulp插件。

tl;dr

如果这是您的完整package.json,看起来您没有安装其他的gulp插件。

假设下面是您的package.json

package.json

代码语言:javascript
复制
{
  "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

代码语言:javascript
复制
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');
票数 11
EN

Stack Overflow用户

发布于 2015-05-31 14:45:54

尝试将延迟加载设置为false。

代码语言:javascript
复制
var gulp = require('gulp');
var plugins= require('gulp-load-plugins')({lazy:false});

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

gulp.task('default');

正如其他人提到的,安装一些插件。

票数 7
EN

Stack Overflow用户

发布于 2015-03-30 22:08:19

让我向你展示我有什么以及我是如何做到的,也许这会有所帮助。

我的package.json

代码语言:javascript
复制
{
  "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

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

这是一个插件的例子:

代码语言:javascript
复制
 // 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,我已经将camelize设置为true。延迟加载只加载您使用的插件,而不是所有插件。

小心使用gulp-load-plugins,因为它会减慢你的任务,例如我运行gulp-webserver,当我把它和gulp-load-plugins一起使用时,任务会在200毫秒后结束,而如果我正常使用它,任务会在20毫秒后结束。所以不要什么都用,试一试,看看你在每项任务上损失了多少性能,并确定优先级。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29288870

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档