首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PostCSS错误:[对象]不是PostCSS插件

PostCSS错误:[对象]不是PostCSS插件
EN

Stack Overflow用户
提问于 2016-10-17 15:19:26
回答 6查看 48.3K关注 0票数 32

这个错误来自于postcss插件,我想我可能写错了。

我正在尝试将cssnanoautoprefixer添加到postcss插件中。

代码语言:javascript
复制
gulp/node_modules/gulp-postcss/node_modules/postcss/lib/processor.js:143
        throw new Error(i + ' is not a PostCSS plugin');
        ^

Error: [object Object] is not a PostCSS plugin
    at Processor.normalize (/Applications/XAMPP/xamppfiles/htdocs/sites/gulp/node_modules/gulp-postcss/node_modules/postcss/lib/processor.js:143:15)
    at new Processor (/Applications/XAMPP/xamppfiles/htdocs/sites/gulp/node_modules/gulp-postcss/node_modules/postcss/lib/processor.js:51:25)
    at postcss (/Applications/XAMPP/xamppfiles/htdocs/sites/gulp/node_modules/gulp-postcss/node_modules/postcss/lib/postcss.js:73:10)
    at Transform.stream._transform (/Applications/XAMPP/xamppfiles/htdocs/sites/gulp/node_modules/gulp-postcss/index.js:47:5)
    at Transform._read (_stream_transform.js:167:10)
    at Transform._write (_stream_transform.js:155:12)
    at doWrite (_stream_writable.js:300:12)
    at writeOrBuffer (_stream_writable.js:286:5)
    at Transform.Writable.write (_stream_writable.js:214:11)
    at DestroyableTransform.ondata (/Applications/XAMPP/xamppfiles/htdocs/sites/gulp/node_modules/gulp-sass/node_modules/through2/node_modules/readable-stream/lib/_stream_readable.js:531:20)
Mac-a45e60e72dad:gulp JoeKonst$ 

我的代码:

代码语言:javascript
复制
// Dependancies
var gulp = require('gulp'),
    browserSync = require('browser-sync'),
    plumber = require('gulp-plumber'),
    autoprefixer = require('gulp-autoprefixer'),
    uglify = require('gulp-uglify'),
    compass = require('gulp-compass'),
    rename = require('gulp-rename'),
    nano = require('cssnano'),
    del = require('del'),
    postcss = require('gulp-postcss'),
    sass = require('gulp-sass');

// Styles
gulp.task('styles', function(){
    gulp.src('sass/main.scss')
    .pipe(sass())
    .pipe(postcss([autoprefixer({browsers: ['last 2 versions']}), nano()]))
    .pipe(gulp.dest('css/'));

    gulp.watch('sass/**/*.scss', ['styles']);
});

// Tasks
gulp.task('default', ['styles']);
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2016-10-17 15:37:13

您正在使用gulp-autoprefixer包。这只是原始autoprefixer包的一个包装器,它将其转换为一个gulp插件,这样您就可以执行.pipe(autoprefixer())了。

然而,postcss希望最初的软件包本身,而不是吞咽插件。

所以,不是这样的:

代码语言:javascript
复制
autoprefixer = require('gulp-autoprefixer'),

您需要安装autoprefixer包并执行以下操作:

代码语言:javascript
复制
autoprefixer = require('autoprefixer'),
票数 37
EN

Stack Overflow用户

发布于 2020-10-14 03:27:29

@rizkit -我找到了修复,它很简单。只要运行npm i -d postcss,问题就解决了。

基本上,您需要依赖项中的gulp-postcsspostcss插件才能正常工作。我假设gulp-postcss插件需要更新项目中的postcss包引用才能正确修复它,所以我们将来只需要包括gulp-postcss

票数 44
EN

Stack Overflow用户

发布于 2020-12-13 14:33:56

尾翼&反应问题

对于任何面对上述问题的人来说,在建立一个使用尾风的反作用项目时,运行npm i postcss -D对我来说是有效的。

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

https://stackoverflow.com/questions/40090111

复制
相关文章

相似问题

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