Tag: gulp

希望使用Gulp来创build独立的HTML文件的个人分布

基本上我正在寻找一个Gulp插件来打开这样一个目录: /app – htmlfile1.html – htmlfile2.html – htmlfile3.html – /css -cssmain.css -/js -global.js 把它变成这样: /dist -/htmlfile1 – htmlfile1.html – /css -cssmain.css -/js -global.js – /htmlfile2 – htmlfile2.html – /css -cssmain.css -/js -global.js – /htmlfile3 – htmlfile3.html – /css -cssmain.css -/js -global.js 有关如何完成这样的构build系统的任何想法?

无法使用node.js将sass模块安装到gulp.js

运行npm install gulp-sass –save-dev时,我不断收到以下错误 gyp ERR! build error gyp ERR! stack Error: `C:\Program Files (x86)\MSBuild\12.0\bin\msbuild.exe` failed with exit code: 1 gyp ERR! stack at ChildProcess.onExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.j 67:23) gyp ERR! stack at ChildProcess.emit (events.js:98:17) gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:810:12) gyp ERR! System Windows_NT 6.1.7601 gyp ERR! command "node" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "reb d" gyp ERR! […]

包含gulp-file-include的gulp手表

我使用yeoman / generator-gulp-webapp,并添加了gulp-file-include 。 我build立了gulpfile.js来包含构build文件 ,但是我不知道如何设置gulp手表 。 以下是我尝试这样做,但似乎这是行不通的。 我没有得到任何错误。 一切工作正常,除了index.html有@@包括(…),而不是从这些文件的代码 'use strict'; // generated on 2014-10-27 using generator-gulp-webapp 0.1.0 var gulp = require('gulp'); // load plugins var $ = require('gulp-load-plugins')(); gulp.task('styles', function () { return gulp.src('app/styles/main.scss') .pipe($.rubySass({ style: 'expanded', precision: 10 })) .pipe($.autoprefixer('last 1 version')) .pipe(gulp.dest('.tmp/styles')) .pipe($.size()); }); gulp.task('fileinclude', function () { return gulp.src('app/*.html') .pipe($.fileInclude()) […]

我怎样才能从另一个gulpfile运行一个构build?

作为我的构build过程的一部分,我需要在另一个项目的子模块上运行gulp构build。 我知道我可以使用“require('path / to / other / gulpfile.js')”,但似乎并没有吞噬任何东西来处理任务名称冲突。 这两个gulpfiles有一个“build设”的任务。 有没有办法在运行时重命名已定义的吞咽任务?

吞噬指南针创build一个不需要的文件,而不是只使用stream

这是我的app-compass gulp任务: var compass = require('gulp-compass'); var autoprefixer = require('gulp-autoprefixer'); gulp.task('app-compass', function() { var stream = gulp.src('./app/styles/index.scss') .pipe(compass({ css: paths.css, sass: 'app/styles', image: 'app/assets/images', generated_images_path: paths.images })) .pipe(autoprefixer()) .pipe(gulp.dest(paths.css)); }); 作为指南针的一部分,创build了一个index.css文件。 这是一个不需要的操作。 我只想在stream中的数据而不写入文件。 明天我可能会改变目的地,例如,我将不得不改变指南针的css属性。 有没有一种方法,我可以告诉指南针不创build一个CSS文件,只通过它传递它?

仅在Gulp任务中的文件夹中的一部分文件上使用Browserify

通常在使用Browserify时,如果要合并多个文件,请运行以下内容: gulp.task('build-tests', function() { var b = browserify({ entries: ['./lib/some_specs.js', './lib/some_more_specs.js'] }); b.bundle().pipe(source('specs.js')).pipe(gulp.dest('./dist')); }) 我想用dynamic创build的已过滤文件列表来replace条目,这样,每次添加一个我想要浏览的新文件时,就不必更新数组,而是自动执行此操作。 为此,我开始使用gulp-filter从文件夹中select我想要浏览的文件: gulp.src('lib/*.js') .pipe(gulpFilter('*_specs.js')) .pipe(concat('specs.js')) ); 但是因为这返回一个asynchronousstream而不是一个数组,所以你不能使用这个入口。 然后,我想我可以将单独的文件连接成一个虚拟文件,然后将其传递给Browserify。 喜欢这个: gulp.task('build-tests', function() { var b = browserify( gulp.src('lib/*.js') .pipe(gulpFilter('*_specs.js')) .pipe(concat('specs.js')) ); b.bundle().pipe(source('specs.js')).pipe(gulp.dest('./dist')); }) 但是这会抛出一个未处理的错误事件 – 也许是因为源文件在bundle方法运行之前没有被连接起来? 那么这就导致我问,是否有人有任何类似的经验或沿着这些方面的经验? 我很新的吞噬,所以任何指针也将不胜感激。 谢谢。

Gulp-sass在包含的文件中找不到variables?

我有一个_variables.scss文件声明的地图: $chord1: ( color1: rgb(0, 155, 223), color2: rgb(114, 191, 68), color3: rgb(207, 9, 137), color4: rgb(62, 83, 164) ); $chord: $chord1; 我有第二个文件。 _globals.scss我在这里引用: .myClass { color: map-get($chord, color1); } 我有一个主要的scss文件作为app.scss,@import他们: @import 'colors'; @import 'globals'; 但是,gulp-sass会抛出一个错误Error: invalid top-level expression基于map-get的Error: invalid top-level expression 。 我在一个项目上使用了gulp-ruby-sass,它工作。 不过,在这个项目中我们使用的是gulp-sass 1.1.0。 我的g task任务是: gulp.task('styles', function () { return gulp.src('./app/assets/sass/app.scss') .pipe(plumber()) […]

gulp打印/logging文件的内容

例如,我正在处理一个想要debugging某个文件的gulp任务,并且想在控制台中读取它。 无论是通过stream还是通过简单的任务都无关紧要。 我尝试打印乙烯基物体的内容…但没有任何好的结果 gulp.task('task', function(){ console.log( gulp.src('path/to/file.txt').content.toString() ); }); 或通过节点 function sendTo(res) { return through( function write(data) { // this will be called once for each file res.write(data.contents); }, function end() { // this will be called when there are no more files res.end() } ); } gulp.task('task', function(res){ gulp.src('path/to/file.txt') .pipe(sendTo(res)); }); 或尝试使用fs节点模块做到这一点,具有相同的结果… fs.readFile('path/to/file.txt', {encoding: […]

使用TFS构buildNode / Gulp

与networking应用程序。 我正在研究,我们使用Gulp来编译一些样式表和脚本。 这些编译的文件被Web应用程序使用。 当我们在本地进行开发的时候,我们没有Gulp做完整的编译过程,因为它需要大约50秒。 当我们登记到TFS时,我们希望构build完成编译作为门控登记的一部分。 我们的问题是dev-ops不会允许我们在构build机器上安装Node。 我们如何在没有安装Node的情况下在TFS上运行gulp任务?

与babel.js一起使用gulp-watch

下面是一个Gulp ES6的编译任务。 它工作正常,但我试图用gulp-watch插件replacegulp.watch,以便捕获新文件。 问题是,gulp-watch并没有给我gulp.watch做的callback,我不知道该怎么办。 这是我原来的工作任务: var gulp = require('gulp'), rename = require('gulp-rename'), plumber = require('gulp-plumber'), gprint = require('gulp-print'), notify = require('gulp-notify'), babel = require('gulp-babel'); gulp.task('default', function() { return gulp.watch('../**/**-es6.js', function(obj){ if (obj.type === 'changed') { gulp.src(obj.path, { base: './' }) .pipe(plumber({ errorHandler: function (error) { /* elided */ } })) .pipe(babel()) .pipe(rename(function (path) { path.basename […]