Я наступний цей підручник про те, як почати з gulp і browserify (серед інших плагінів).
Структура наступна:
.
├── gulpfile.js
└── gulp
├── index.js
└── tasks
├── browserify.js
└── minifyCss.js
/* gulpfile.js */
var gulp = require("./gulp")([
"minifyCss",
"browserify"
]);
gulp.task("default", ["minifyCss", "browserify"]);
/* index.js */
var gulp = require("gulp");
module.exports = function(tasks) {
tasks.forEach(function(name) {
gulp.task(name, require("./tasks/" + name));
});
return gulp;
};
/* tasks/minifyCss.js */
var gulp = require("gulp");
var minifyCss = require("gulp-minify-css");
gulp.task("minifyCss", function() {
return gulp.src("css/*.css")
.pipe(minifyCss())
.pipe(gulp.dest("dist"));
})
Однак при запуску $ gulp
він видає таку помилку:
Error: Task minifyCss can"t support dependencies that is not an array of strings
at Gulp.Orchestrator.add (/home/joao/src/joaopw/node_modules/gulp/node_modules/orchestrator/index.js:47:10)
at /home/joao/src/joaopw/gulp/index.js:5:14
at Array.forEach (native)
at module.exports (/home/joao/src/joaopw/gulp/index.js:4:11)
at Object.<anonymous> (/home/joao/src/joaopw/gulpfile.js:1:91)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
Я не можу знайти те, що проблема тут, я відсутні деякі аргументи або? Код не настільки відрізняється від прикладу на підручнику.
Відповіді:
5 за відповідь № 1У твоїй index.js
файл всередині forEach
цикл кожна задача ковтка повинна мати функцію зворотного виклику, тому вам потрібно експортувати одне з ваших завдань так:
/* tasks/minifyCss.js */
var gulp = require("gulp");
var minifyCss = require("gulp-minify-css");
module.exports = function() {
return gulp.src("css/*.css")
.pipe(minifyCss())
.pipe(gulp.dest("dist"));
};