最近在使用gulp-load-plugins
的时候出现了一个错误。
主要配置如下:
const gulp = require('gulp')
const gulpLoadPlugins = require('gulp-load-plugins')
// load all gulp plugins
const plugins = gulpLoadPlugins()
gulp.task('compile-scss-app', () => {
return gulp.src(['scss/app.scss'], {base: './scss'})
.pipe(plugins.autoprefixer())
.pipe(plugins.plumber())
.pipe(plugins.rename(function (path) {
path.extname = ".acss"
}))
.pipe(gulp.dest('./source'))
})
报错大致如下:
TypeError: plugins.plumber is not a function
at Gulp.gulp.task
其实我已经安装了gulp-plumber
,但是为什么会出现这个错误呢?
原来gulp-load-plugins
会从package.json
文件中的依赖找这个包,本地安装但是没有存到package.json
文件中的devDependencies
或者dependencies
里面,它是不会从node_modules
中加载的。