小编Sve*_*ung的帖子

PostCSS错误:[object Object]不是PostCSS插件

错误来自postcss插件,我想我可能写错了.

我想补充cssnanoautoprefixerpostcss插件.

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$ 
Run Code Online (Sandbox Code Playgroud)

我的代码:

// Dependancies
var gulp = require('gulp'),
    browserSync = require('browser-sync'),
    plumber = require('gulp-plumber'),
    autoprefixer = require('gulp-autoprefixer'),
    uglify …
Run Code Online (Sandbox Code Playgroud)

gulp postcss

6
推荐指数
4
解决办法
4723
查看次数

Gulp glob忽略文件类型而不复制空文件夹

我创建了一个gulp的glob,它忽略了一组目录中的javascript和coffeescript文件.我希望它将所有其他文件复制到一个工作正常的目录中.唯一的问题是,当只有javascript或coffeescript文件时,它会复制一个空文件夹.有关如何修改此glob以不复制空文件夹的任何想法?

gulp.task('copyfiles', function(){
    gulp.src('apps/*/static_src/**/!(*.js|*.coffee)')
        .pipe(gulp.dest('dest'));
});
Run Code Online (Sandbox Code Playgroud)

示例源文件:

apps/appname/static_src/images/image.jpg
apps/appname/static_src/js/script.js
Run Code Online (Sandbox Code Playgroud)

预期产量:

dest/static_src/images/image.jpg
Run Code Online (Sandbox Code Playgroud)

当前输出:

dest/static_src/images/image.jpg
dest/static_src/js/
Run Code Online (Sandbox Code Playgroud)

javascript glob node.js gulp

5
推荐指数
2
解决办法
2081
查看次数

gulp watch .js文件不起作用

gulpfile.js

'use strict';

var gulp = require('gulp');
var sass = require('gulp-sass');
var browserSync = require('browser-sync').create();
var reload      = browserSync.reload;

gulp.task('serve')

// Static Server + watching scss/html files
gulp.task('serve', function() {

    browserSync.init({
        server: "./public"
    });

    gulp.watch('./public/**/*.html').on('change', reload); // worked
    gulp.watch('./public/**/*.js').on('change', reload); // doesn't work
});

gulp.task('sass', function () {
  return gulp.src('./public/sass/**/*.scss')
    .pipe(sass().on('error', sass.logError))
    .pipe(gulp.dest('./public/css'))
    .pipe(reload({stream: true}));
});

gulp.task('sass:watch', function () {
  gulp.watch('./public/sass/**/*.scss', ['sass'])
});

gulp.task('default', ['serve','sass', 'sass:watch']);
Run Code Online (Sandbox Code Playgroud)

使用上述gulp设置,当我更改html和sass文件时,我的broswersnyc可以正常工作,但不适用于javascript文件。

这是我的文件夹结构:

它与AngularJS有关吗?因为我app.js(位于我的public文件夹中)由AngularJS控制器组成。

javascript angularjs gulp browser-sync

5
推荐指数
1
解决办法
1709
查看次数

从 gulp 中启动快速服务器

server.js在同一个目录中有一个文件gulpfile.js。在gulpfile.js我需要我的server.js文件:

var express = require('./server.js')
Run Code Online (Sandbox Code Playgroud)

我想在default任务中运行它:

gulp.task('default' , [ 'build','watch','connect'] , function(){
    gulp.run('express');
});
Run Code Online (Sandbox Code Playgroud)

我试图像那样运行它,但它没有用。我想你只能以这种方式运行任务。我怎样才能在default任务中运行它?

server.js文件包含以下代码:

var express = require('express');
var app = express(); 

app.get('/api/test', function(req,res){
  res.send('Hello world!')
});

app.listen(3000, function(){
  console.log('Example app listening on port 3000!');
})
Run Code Online (Sandbox Code Playgroud)

javascript node.js express gulp

5
推荐指数
1
解决办法
6019
查看次数

如何从展平列表创建嵌套列表?

我写了一个函数来创建一个嵌套列表.

例如:

input= ['a','b','c','','d','e','f','g','','d','s','d','a','']
Run Code Online (Sandbox Code Playgroud)

我想先创建一个子列表 ''

作为回报,我想要一个嵌套列表,如:

[['a','b','c'],['d','e','f','g'],['d','s','d','a']]
Run Code Online (Sandbox Code Playgroud)

python python-3.x

4
推荐指数
1
解决办法
244
查看次数

javascript,gulp,watch,changed

我无法理解这一点.这应该是每次修改监视文件时执行的gulp任务.任何人都可以解释为什么需要通过changed插件管道监视文件?

gulp.task('build-css', function () {
  return gulp.src(paths.css)
  .pipe(changed(paths.output, {extension: '.css'}))
  .pipe(gulp.dest(paths.output));
});

gulp.task('watch', ['serve'], function() { 
  gulp.watch(paths.css, ['build-css']); 
}); 
Run Code Online (Sandbox Code Playgroud)

免责声明:这不是我的代码.只是想了解发生了什么,以便创建我自己的自定义监视任务.

javascript watch gulp gulp-changed

4
推荐指数
1
解决办法
3135
查看次数

连接和uglified Javascript文件大于源文件

您好我有以下gulpfile.js:

'use strict';

var gulp = require('gulp'),
    jshint = require('gulp-jshint'),
    sass = require('gulp-ruby-sass'),
    compass = require('gulp-compass'),
    gutil = require('gulp-util'),
    concat = require('gulp-concat'),
    uglify = require('gulp-uglify'),
    cleanCSS = require('gulp-clean-css'),
    sourcemaps = require('gulp-sourcemaps'),
    templateCache = require('gulp-angular-templatecache'),
    path = require('path');

/* Default Gulp Task */
gulp.task('default', ['sass', 'mfb-sass', 'bower-css', 'bower-js', 'app-js', 'ng-templates'], function () {
    return gutil.log('Gulp is running!')
});

/* Build SASS files */
gulp.task('sass', function () {
    return gulp.src('./src/sass/*.scss')
        .pipe(sourcemaps.init())
        .pipe(compass({
            project: path.join(__dirname, '/'),
            css: 'dist/css',
            sass: 'src/sass'
        })) …
Run Code Online (Sandbox Code Playgroud)

gulp gulp-sourcemaps gulp-concat gulp-uglify

4
推荐指数
1
解决办法
1471
查看次数

run-sequence不按顺序运行gulp任务

我的Gulp文件中有3个必须按此顺序运行的任务:

  1. clean(删除/dist文件夹中的所有内容)
  2. copy(将多个文件复制到/dist文件夹中)
  3. replace(替换文件/dist夹中某些文件中的一些字符串)

我已经阅读了所有其他帖子,我尝试过"run-sequence",但由于"替换"任务最后没有运行,因此无法正常工作.我对使用"回调"感到困惑.单独运行任务工作正常.

var gulp = require('gulp');
var runSequence = require('run-sequence');

gulp.task('runEverything', function(callback) {
    runSequence('clean',
                'copy',
                'replace',
                callback);
});

gulp.task('clean', function () {
    return del(
        'dist/**/*'
    );
});

gulp.task('copy', function() {
    gulp.src('node_modules/bootstrap/dist/**/*')
        .pipe(gulp.dest('dist/vendor'))
    //...
    return gulp.src(['index.html', '404.html', '.htaccess'])
        .pipe(gulp.dest('dist/'));
});

gulp.task('replace', function(){
    gulp.src(['dist/index.php', 'dist/info.php'])
        .pipe(replace('fakedomain.com', 'realdomain.com'))
        .pipe(gulp.dest('dist'));

    return gulp.src(['dist/config.php'])
        .pipe(replace('foo', 'bar'))
        .pipe(gulp.dest('dist'));
});
Run Code Online (Sandbox Code Playgroud)

使用这3个任务的完整示例将不胜感激.谢谢.

javascript gulp run-sequence

4
推荐指数
1
解决办法
3180
查看次数

Gulp vinyl ftp - 如何使用清洁功能?

vinyl-ftp软件包有一个功能,clean()但我不知道如何正确使用它.我需要:

  1. 从我的build文件夹中获取所有文件
  2. 把它们放到我的ftp服务器上的目标文件夹中
  3. 清除文件,如果它们在本地不可用

我有以下gulp任务:

gulp.task('deploy', () => {
  let conn = ftp.create({host:host,user:user,password: password});
  return gulp.src('build/**', {base: './build/', buffer: false })
      .pipe(conn.newer('/path/on/my/server/')) // only upload newer files
      .pipe(conn.dest('/path/on/my/server/'))
      .pipe(conn.clean('build/**', './build/'));
});
Run Code Online (Sandbox Code Playgroud)

1)和2)是可以的,但clean()功能什么都不做

ftp node.js gulp vinyl vinyl-ftp

4
推荐指数
1
解决办法
1039
查看次数

gulp.series()不运行任务

我不知道为什么gulp.series()不触发回调函数。

我正在尝试使用从用户输入中获取字符串,gulp-prompt并使用调用构建和部署功能gulp.series()。我的任务gulp.series()根本不执行。

gulp.task('test', function(){
  const prompt = require('gulp-prompt');
  return gulp.src('test.js')
    .pipe(prompt.prompt({
        type: 'checkbox',
        name: 'env',
        message: 'which environment do you want to deploy to?',
        choices: ['qa','prod']
    },function(res){
      //console.dir(res.env);
        var env = res.env;
        console.log(env);
        console.log('hi');
        gulp.series('clean', 'patternlab:build', 'tag-version', deployWeb.bind(this, env), function(done){
          done();
        });
    }));
});
Run Code Online (Sandbox Code Playgroud)

javascript node.js gulp gulp-4

3
推荐指数
1
解决办法
1928
查看次数