gpt4 book ai didi

file - 如何使用 Gulp 向文件添加一行文本

转载 作者:行者123 更新时间:2023-12-01 18:57:37 25 4
gpt4 key购买 nike

我一直在尝试弄清楚如何使用 Gulp 将一行文本添加到任何类型的文件中。

例如添加:

@import 'plugins'

到我的 main.sass 文件。

或者将 CDN 添加到 index.html 文件。

我确实尝试过:

gulp.task('inject-plugins', function(){
gulp.src('src/css/main.sass')
.pipe(inject.after('// Add Imports', '\n@import \'plugins\'\n'));
});

没有任何喜悦。知道我该如何实现这一目标吗?

最佳答案

取决于你想做什么。

如果您只想将文本添加到文件的开头或结尾 gulp-headergulp-footer你是 friend 吗:

var header = require('gulp-header');
var footer = require('gulp-footer');

gulp.task('add-text-to-beginning', function() {
return gulp.src('src/css/main.sass')
.pipe(header('@import \'plugins\'\n'))
.pipe(gulp.dest('dist'));
});

gulp.task('add-text-to-end', function() {
return gulp.src('src/css/main.sass')
.pipe(footer('@import \'plugins\''))
.pipe(gulp.dest('dist'));
});

如果您的文件中有某种“ anchor ”文本,您可以使用 gulp-replace :

var replace = require('gulp-replace');

gulp.task('replace-text', function() {
var anchor = '// Add Imports';
return gulp.src('src/css/main.sass')
.pipe(replace(anchor, anchor + '\n@import \'plugins\'\n'))
.pipe(gulp.dest('dist'));
});

最后是黑胶文件操作的瑞士军刀:map-stream 。这使您可以直接访问文件内容,并允许您执行您可以在 JavaScript 中想到的任何类型的字符串操作:

var map = require('map-stream');

gulp.task('change-text', function() {
return gulp.src('src/css/main.sass')
.pipe(map(function(file, cb) {
var fileContents = file.contents.toString();
// --- do any string manipulation here ---
fileContents = fileContents.replace(/foo/, 'bar');
fileContents = 'First line\n' + fileContents;
// ---------------------------------------
file.contents = new Buffer(fileContents);
cb(null, file);
}))
.pipe(gulp.dest('dist'));
});

关于file - 如何使用 Gulp 向文件添加一行文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38374936/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com