Tag: 吞咽

Gulp:在编辑胡子时避免中间文件

我在我的回购中有以下目录结构: src some-project some-file.html some-file.yml other-project foo.html foo.yml bar.html bar.yml stylesheet.css dist some-project some-file.html some-file.yml other-project foo.html foo.yml bar.html bar.yml 我有一个吞食任务的任务,在/ src文件夹中的html文件添加任何样式表中的样式,并自动将它们内联在html中(这些是电子邮件)。 yml是发送数据时使用的元信息。 现在我想添加小胡子模板到我的HTML。 模板的数据将在yml文件中。 我遇到的问题是,gulp-mustache插件为其模板input和参数中的对象提供了一个数据stream。 gulp.task('build', () => { gulp.src('src/**/*.html') .pipe(mustache(data)) // I don't have the data! .pipe(inlineCss({ removeStyleTags: false })) .pipe(prefix(BASE_URL, [ { match: "img[src]", attr: "src"} ])) .pipe(gulp.dest('dist')) }); 我还有另一个可以将YML编译成JSON的任务,但是我试图避免创build临时文件,因为它打破了吞噬虚拟文件stream的整个观点。 此外,它并没有解决我有两个任务和两个pipe道的问题,我不能将一个文件的内容传递给胡子function。 有什么我失踪? […]

如何使用gulp来设置ExpressJS来自动重新加载(gulp-live-server)

我有一个简单的快速4.xtesting应用程序。 我知道你可以使用gulp从自动重新加载中受益,所以在更改服务器上的任何内容之后,它会自动重新启动。 我设法与快车安装车把模板引擎。 我的文件系统非常简单: app / main.js – >是服务器 app / gulp.js – >是gulp文件 app / views / *。hbs – >包含我的句柄文件 app / views / layouts / *。hbs – >包含我的句柄布局文件 我正在使用gulp-live-server,而且我有一种感觉,我错过了一些东西(只看了几个教程来找出是什么吞咽) app / gulp.js – 来自gulp -live-server的第二个例子 var gulp = require('gulp'); var gls = require('gulp-live-server'); gulp.task('serve', function() { //1. run your script as a server […]

简单的Express服务器和Gulp错误

我试图运行一个简单的快速Web服务器使用吞咽任务。 我只想要一个显示索引文件的静态服务器。 我可以通过运行一个节点模块来轻松地完成这个任务,但是我想再次执行这个任务。 我打算扩大这个允许LiveReload服务器设置。 我遵循了很多关于设置LiveReload的教程,但是它们都失败了。 我假设它与文章写作时使用的版本有关。 但是我希望也许有人想到如何处理这个问题。 我已经创build了一个非常小的Github回购,可以让你玩弄我想要完成的事情: fixit Gulpfile.js: var gulp = require('gulp'); var EXPRESS_PORT = 4000; var EXPRESS_ROOT = __dirname; gulp.task('express', function () { var express = require('express'); var app = express(); app.use(express.static(EXPRESS_ROOT)); app.listen(EXPRESS_PORT); }); *与Gulp文件在同一目录中有一个index.html 这里是错误: /var/www/clients/client1/web14/sendus-admin/node_modules/express/node_modules/etag/index.js:55 throw new TypeError('argument entity must be string or Buffer') ^ TypeError: argument entity must be […]

用gulp-watch忽略隐藏的文件

我正在看文件修改的整个文件夹,我想忽略一些文件。 例如,我想要观察所有文件,但忽略以句号( . )开头的那些文件。 我怎么做?

用吞咽数据吞噬G G

我正在尝试在我的工作stream中使用gulp-jade的gulp-data,但是我得到了一个与gulp-data插件相关的错误。 这是我的gulpfile.js var gulp = require('gulp'), plumber = require('gulp-plumber'), browserSync = require('browser-sync'), jade = require('gulp-jade'), data = require('gulp-data'), path = require('path'), sass = require('gulp-ruby-sass'), prefix = require('gulp-autoprefixer'), concat = require('gulp-concat'), uglify = require('gulp-uglify'), process = require('child_process'); gulp.task('default', ['browser-sync', 'watch']); // Watch task gulp.task('watch', function() { gulp.watch('*.jade', ['jade']); gulp.watch('public/css/**/*.scss', ['sass']); gulp.watch('public/js/*.js', ['js']); }); var getJsonData = […]

与请求一起使用gulp

我有以下Gulpfile.js : 'use strict'; const gulp = require('gulp'), request = require('request'); const paths = { vendor: [ 'https://raw.githubusercontent.com/jquery/jquery-dist/master/dist/jquery.min.js', 'https://raw.githubusercontent.com/kenwheeler/slick/master/slick/slick.js' ] }; gulp.task('vendor', (res) => { const url = request.get(paths.vendor).pipe(res); return gulp.src(url) .pipe(gulp.dest('public/vendor')); }); gulp.task('default', gulp.parallel('vendor')); 我收到以下错误: Error: options.uri is a required argument 用这种方法,我试图解决像Bower这样的客户端包pipe理器。 有没有办法使用gulp request和循环的对象列表? 编辑: 我放置了这个代码进行testing,只返回循环的第一行: gulp.task('vendor', () => { for (let i=0; i<paths.vendor.length; […]

Gulp任务正在无限循环中运行

我有一个gulp任务将所有html文件从源文件复制到目的地。 html gulp任务 var gulp = require('gulp'); module.exports = function() { return gulp.src('./client2/angularts/**/*.html') .pipe(gulp.dest('./client2/script/src/')); }; 当我改变.html文件它开始运行html gulp任务时,开始运行gulp手表。 watch.ts var gulp = require('gulp'); var watch = require('gulp-watch'); var sq = require('run-sequence'); module.exports = function () { var tsClientHtml = [ 'client2/**/*.html' ]; watch(tsClientHtml, function () { gulp.run('html'); }); }; 它进入无限循环,意味着每当我在HTML文件中改变其糟糕的HTML gulp任务一次又一次…有人可以请build议什么是错误的watch.ts

用gulp-express运行coffescript文件

我正在expressJS中创build一个API,并且我想每次更改文件时重新加载服务器 我试过了 gulp.task('server', function () { // Start the server at the beginning of the task server.run({ file: 'server.coffee' }); // Restart the server when file changes gulp.watch(['*coffee'], server.notify); }); 但它失败,因为它认为咖啡文件是一个JavaScript文件,并返回语法错误

使用Gulp Use-Ref和Express

由于Express在编译Jade时没有使用ref ,所以我无法使用 Express -ref ,因为我没有使用Gulp编译我的编译文件。 有谁知道是否有可能得到使用-Ref与快速?,如果可以,请你举个例子。 这将解决很多问题,因为Node的所有资产pipe理者似乎都是非常具体的,而且不具有可扩展性。

通过咕噜开始量angular器

我试图运行量angular器作为一个吞咽任务,但我不能得到它的工作。 我已经尝试了这样的吞咽量angular器插件: gulp.task('protractor-server', function (done) { var called = false; nodemon({ script: 'test/e2e/server/server.js', stdout: true, ignore: ['app/**', 'node_modules'], watch: 'test/e2e/**/*.js' }) .on('start', function () { if (!called) { done(); } called = true; }); }); gulp.task('run-protractor', ['protractor-server'], function (done) { return gulp.src(['test/e2e/**/*.js']) .pipe(protractor({ configFile: __dirname + '/protractor.conf.js' })) .on('error', function (error) { console.log('gulp error: ', […]