单个 gulp 内的多个流 - 如果调用?
Multiple streams inside single gulp-if calling?
在下面的代码中,我plugins.if(
!config.isDevelopmentMode && config.compileBladeTemplates, /* task */)
检查了两次(plugins.if是gulp-if包)。我可以用一张支票重构下面的代码吗?不确定仅使用 gulp-if 是否可行,因此允许使用其他插件。
const gulp = require('gulp'),
plugins = require('gulp-load-plugins')();
// ...
.pipe(plugins.if(
!config.isDevelopmentMode && config.compileBladeTemplates,
plugins.replace(
/<!--\s+@blade\s+namedRoute\(\s*(.+?)\s*\)\s*-->\s*(?:\r\n|\r|\n)?\s*(<.+href=")(?:.+?)(".*\/?>)/g,
`{{ route('') }}`
)
))
.pipe(plugins.if(
!config.isDevelopmentMode && config.compileBladeTemplates,
plugins.replace(
/<!--\s+@blade\s+(yield|include)\s*-->/g,
` @('')`
)
))
// ...
如果我明白你想做什么,我认为 lazypipe 会适合你。参见 gulp-if with lazypipe。
var replaceChannel = lazypipe()
plugins.replace(
/<!--\s+@blade\s+namedRoute\(\s*(.+?)\s*\)\s*-->\s*(?:\r\n|\r|\n)?\s*(<.+href=")(?:.+?)(".*\/?>)/g,
`{{ route('') }}`
)
plugins.replace(
/<!--\s+@blade\s+(yield|include)\s*-->/g,
` @('')`
);
然后在你的任务中:
.pipe(plugins.if(
!config.isDevelopmentMode && config.compileBladeTemplates, replaceChannel()))
在下面的代码中,我plugins.if(
!config.isDevelopmentMode && config.compileBladeTemplates, /* task */)
检查了两次(plugins.if是gulp-if包)。我可以用一张支票重构下面的代码吗?不确定仅使用 gulp-if 是否可行,因此允许使用其他插件。
const gulp = require('gulp'),
plugins = require('gulp-load-plugins')();
// ...
.pipe(plugins.if(
!config.isDevelopmentMode && config.compileBladeTemplates,
plugins.replace(
/<!--\s+@blade\s+namedRoute\(\s*(.+?)\s*\)\s*-->\s*(?:\r\n|\r|\n)?\s*(<.+href=")(?:.+?)(".*\/?>)/g,
`{{ route('') }}`
)
))
.pipe(plugins.if(
!config.isDevelopmentMode && config.compileBladeTemplates,
plugins.replace(
/<!--\s+@blade\s+(yield|include)\s*-->/g,
` @('')`
)
))
// ...
如果我明白你想做什么,我认为 lazypipe 会适合你。参见 gulp-if with lazypipe。
var replaceChannel = lazypipe()
plugins.replace(
/<!--\s+@blade\s+namedRoute\(\s*(.+?)\s*\)\s*-->\s*(?:\r\n|\r|\n)?\s*(<.+href=")(?:.+?)(".*\/?>)/g,
`{{ route('') }}`
)
plugins.replace(
/<!--\s+@blade\s+(yield|include)\s*-->/g,
` @('')`
);
然后在你的任务中:
.pipe(plugins.if(
!config.isDevelopmentMode && config.compileBladeTemplates, replaceChannel()))