例如,我在mydata.json中有一些数组
[
{
"name": "item1",
"description": "bla bla bla"
},
{
"name": "item2",
"description": "lorem lorem lorem"
},
{
"name": "item3",
"description": "ipsum ipsum ipsum"
},
]我需要将mydata.json拆分为三个文件:item1.json、item2.json和item3.json。
我必须添加什么到我的Gulp任务?
gulp.task('mytask', function () {
return gulp.src("src/mydata.json")
.pipe( ??? )
.pipe(gulp.dest('./dist'));
});发布于 2015-03-19 00:24:21
这不会是最好的解决方案,因为所有的事情都是同步完成的,而且它有点超出了典型的吞咽工作流程。如果这是一个问题,可以将其修改为使用所有异步方法。好处是你不需要写一个新的插件就可以使用它。
var fs = require('fs');
gulp.task('mytask', function(done) {
var data = require('src/mydata.json');
console.log('about to write files...')
data.forEach(function(item) {
var fileName = item.name + '.json';
var fileContents = JSON.stringify(item);
fs.writeFileSync(fileName, fileContents);
console.log('saved file: ', fileName);
});
// let gulp know the task is complete
done();
});发布于 2018-08-10 04:50:18
将你的任务分解成单独的文件。然后在我们的gulpfile.js文件中,您需要在这些文件中。gulpfile.js
require('./gulp/tasks/styles');
require('./gulp/tasks/watch');然后在您的styles.js和watch.js文件中添加gulp.task,并在顶部添加所需的文件。
https://stackoverflow.com/questions/29125088
复制相似问题