我继承了一个项目。
我应该把gulp v3迁移到v4。
但是,我在这个项目中根本找不到gulpfile.js。然而,每个教程都需要一个。我假设有些设置是上一个开发人员知道的,可能已经过时了?
这是我的文件夹结构:

所有任务都分组在“任务”文件夹中。我想说,这些导出的根文件,实际上运行这些任务文件是我的“吞咽文件”。
所有gulp任务都使用:node platform/build.js或node platform/deploy.js运行。
我可以改变这一切,我看到他是如何称呼它并编写任务的。但我不知道他用来做这件事的范例,所以很难知道从哪里开始迁移到v4。
我们正在使用的Gulp库:
"gulp": "3.9.1",
"gulp-autoprefixer": "6.0.0",
"gulp-bundle-assets": "2.29.0",
"gulp-concat": "2.6.1",
"gulp-csso": "3.0.1",
"gulp-data": "1.3.1",
"gulp-ejs": "3.3.0",
"gulp-empty": "0.1.2",
"gulp-eslint": "5.0.0",
"gulp-htmlmin": "5.0.1",
"gulp-if": "2.0.2",
"gulp-imagemin": "5.0.3",
"gulp-rename": "1.4.0",
"gulp-replace": "1.0.0",
"gulp-rimraf": "0.2.2",
"gulp-sass": "3.2.1",
"gulp-sass-lint": "1.4.0",
"gulp-sourcemaps": "2.6.5",
"gulp-string-replace": "1.1.2",
"gulp-strip-comments": "2.5.2",
"gulp-webserver": "0.9.1",它如何运行吞咽任务:
// STEP 1 - process.env.NODE_ENV to staging
(!process.env.NODE_ENV) && (process.env.NODE_ENV = 'staging');
// STEP 2 - Prevent from running on NON-CI
if (!process.env.CI) {
throw new Error('Build can only be performed in CI Environment');
}
// START PROCESS
const _ = require('lodash'),
gulp = require('gulp'),
Tasks = require('./tasks'),
runSequence = require('run-sequence').use(gulp),
// This of the tasks here is the order in which they will executed
taskMap = {
'clean:dist': Tasks.cleanDist,
'clean:tmp': Tasks.cleanTemp,
'copy:assets': Tasks.assetCopy,
'bundle': Tasks.bundleAssets,
'transpile': Tasks.transpile,
'prefixCss': Tasks.autoprefixCss,
'sitemap': Tasks.sitemap,
'robots': Tasks.robots,
'remove:htmlext': Tasks.removeHtmlExt
};
// Create all tasks
_.forEach(taskMap, (value, key) => {
gulp.task(key, value);
});
// @todo: Shift to using gulp.series when gulp is upgraded to v4
gulp.series(..._.keys(taskMap))();发布于 2019-08-27 22:03:32
gulpfile实际上只是一小块Javascript代码--它使用默认名称命名,所以当您运行gulp时,默认情况下它会找到它。
实际上,您拥有的是吞咽文件--它们都是您正在讨论的单个.js文件。
我怀疑他们是这样被分开的,因为有人认为每个任务都有太多的任务,并且想用“主题”来区分它们。
发布于 2019-08-27 22:02:57
我继承了一个项目,该项目使用的是过去一段时间没有吞咽文件的Gulp。事实证明,它实际上是在npm上托管的共享吞咽文件中(比如https://github.com/jonathantneal/gulp-config-dev)。很可能,但它可能是package.json中的一个依赖项。
https://stackoverflow.com/questions/57682525
复制相似问题