Gulp 管理不同环境下的不同文件和路径
在我的正常流程中,我包含了两个cssGulp 管理不同环境下的不同文件和路径,gulp,Gulp,在我的正常流程中,我包含了两个css <link rel="stylesheet" href="style.css"> <link rel="stylesheet" href="external.css"> 但我希望在开发环境中它应该只包含两个文件(style.css,external.css),在生产环境中它应该包含res_style.css。gulp有没有办法根据环境自动处理此问题?您可以使用yargs 在推荐行中,您可以添加for ex:gulp--env dev
<link rel="stylesheet" href="style.css">
<link rel="stylesheet" href="external.css">
但我希望在开发环境中它应该只包含两个文件(
style.css
,external.css
),在生产环境中它应该包含res_style.css。gulp有没有办法根据环境自动处理此问题?您可以使用yargs
在推荐行中,您可以添加for ex:gulp--env development
在gulp配置中:
var argv = require('yargs').argv;
console.log(argv.env);
if (argv.env === 'developmenet') {
// generate 2 css file
} else {
// generate 1 css file
}
使用gulpsrc替换html文件中的文本
var src = path.join('index.html');
var dest = path.join('build/index.html');
gulp.src(src)
.pipe(replace('<link rel="stylesheet" href="style.css">', ''))
.pipe(replace('<link rel="stylesheet" href="external.css">', '<link rel="stylesheet" href="build/res_style.css">'))
.pipe(gulp.dest(dest));
var src=path.join('index.html');
var dest=path.join('build/index.html');
大口src(src)
.管道(更换('',))
.管道(更换('',))
.管道(大口目的地(目的地));
生成不是问题所在,我想在包含此css的index.html文件中的文件中自动生成它。这可能与gulp inject有关。只要提到注释和文件,它就会被追加。
var src = path.join('index.html');
var dest = path.join('build/index.html');
gulp.src(src)
.pipe(replace('<link rel="stylesheet" href="style.css">', ''))
.pipe(replace('<link rel="stylesheet" href="external.css">', '<link rel="stylesheet" href="build/res_style.css">'))
.pipe(gulp.dest(dest));