gulp - 如何摆脱 Gulp 的“从未定义的任务:默认”?
问题描述
我正在使用其他人制作的现有 Gulp 脚本,有趣的是,类似的用于 JS 的脚本可以正常工作,但这个用于样式的脚本却不行。编码:
'use strict';
const
path = require('path'),
pathToLibs = path.resolve('../../../../libs');
const
{CssCompressor} = require('css-compressor.js'),
compressor = new CssCompressor(false),
resolveLocalSrc = function (files) {
return files.map(item => path.resolve(__dirname, item));
},
resolveLibsSrc = function (files) {
return files.map(item => path.resolve(pathToLibs, item));
};
let sources = {
"cache_main.css": [].concat(
resolveLocalSrc([
"scss/design-core.scss"
]),
resolveLibsSrc([
"vendor/jquery/dropzone-4.3.0/dropzone.css"
]),
resolveLocalSrc([
"../scripts/jquery/whatever.css",
"scss/whatever.scss",
])
),
"cache_light.css": resolveLocalSrc(["scss/design-core.scss"])
};
compressor.makeCache(sources, './', ["scss/*.scss"]);
运行时 gulp
,它说:
Task never defined: default
摘自 css-compressor.js:
makeCache(sources, dest = './', additionalDirsToWatch=[]) {
Object.entries(sources).forEach(([cacheFileName, files]) => {
gulp.task('compress ' + cacheFileName, () => {
this.compress(files, cacheFileName, dest);
});
});
你能帮我吗?谢谢!
解决方案
最后需要声明一个默认任务。
使用 Gulp 3.x:
gulp.task('default', ['styles', 'scripts', 'images']);
使用 Gulp 4.x:
gulp.task('default', gulp.parallel('styles', 'scripts', 'images'));
用您的任务替换样式、脚本和图像。
推荐阅读
- sql - 如何从查询中的字段运行更新语句
- c++ - gdb tui -- 关闭 asm 布局的打印功能参数
- python - 查找字符串中出现次数最多的字符
- python - TF2 Keras 从检查点加载模型
- google-sheets - 拆分 Google 表格脚本?
- flutter - 颤振零安全
- sql - 最大 IIF 嵌套达到 VBA SQL
- mysql - 未处理的异常无法添加或更新子行:外键约束失败
- javascript - 在我的组件中添加新项目不能以角度工作
- java - 如何直接从 Spring Boot 应用程序将文件上传到 Azure Blob 存储,而不将文件放入内存(缓冲内存)