【问题标题】:less-plugin-autoprefix plugin with Gulp showing error带有 Gulp 的 less-plugin-autoprefix 插件显示错误
【发布时间】:2015-05-13 23:09:15
【问题描述】:

less-plugin-autoprefixer 插件 README 表示,要使用该插件,您需要将其包含在 gulpfile.js 中:

var LessPluginAutoPrefix = require('less-plugin-autoprefix'),
    autoprefixPlugin = new LessPluginAutoPrefix({browsers: ["last 2 versions"]});
less.render(lessString, { plugins: [autoprefixPlugin] })
  .then(

他们要我在这里放一个开放式回调函数吗?我很困惑。我试着只包括第一部分:

var LessPluginAutoPrefix = require('less-plugin-autoprefix'),
        autoprefixPlugin = new LessPluginAutoPrefix({browsers: ["last 2 versions"]});

然后像这样调用插件:

gulp.task('less', ['clean'], function() {
    return gulp.src('app.less')
        .pipe(less({
            includePaths: ['less'],
            plugins: [autoprefixPlugin] //***//
        }))
        .pipe(cssmin({keepSpecialComments: 0}))
        .pipe(rename('app.full.min.css'))
        .pipe(gulp.dest('../server/dist/'))
        .pipe(filter('../server/dist/**/*.css'))
        .pipe(reload({stream:true}));
});

但我收到以下错误:

TypeError: Object #<Autoprefixer> has no method 'on'
    at DestroyableTransform.Stream.pipe (stream.js:65:8)
    at Gulp.<anonymous> (/Users/himmel/Sites/matt-mcdaniel.com/client/gulpfile.js:131:10)

我已经包含了必要的依赖,autoprefixer-core,我在这里缺少什么?

【问题讨论】:

    标签: less gulp autoprefixer


    【解决方案1】:

    由于包含以下内容,由于未知原因引发了错误:

    var autoprefixer = require('autoprefixer-core');
    

    删除后,没有抛出任何错误。

    另外,包括:

    var LessPluginAutoPrefix = require('less-plugin-autoprefix'),
            autoprefixPlugin = new LessPluginAutoPrefix({browsers: ["last 2 versions"]});
    

    gulp.task('less', ['clean'], function() {
        return gulp.src('app.less')
            .pipe(less({
                includePaths: ['less'],
                plugins: [autoprefixPlugin] //***//
            }))
            .pipe(cssmin({keepSpecialComments: 0}))
            .pipe(rename('app.full.min.css'))
            .pipe(gulp.dest('../server/dist/'))
            .pipe(filter('../server/dist/**/*.css'))
            .pipe(reload({stream:true}));
    });
    

    足以让我的 gulpfile 在构建时自动添加前缀,但在开发期间没有通过 BrowserSync 自动添加前缀。

    【讨论】:

      猜你喜欢
      • 2014-12-10
      • 2018-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-25
      • 1970-01-01
      • 1970-01-01
      • 2015-05-31
      相关资源
      最近更新 更多