diff --git a/lib/generate.js b/lib/generate.js index 05651dff5f..a08ccea8a3 100644 --- a/lib/generate.js +++ b/lib/generate.js @@ -9,6 +9,7 @@ const { resolve, join, dirname } = require('path') const copy = pify(fs.copy) const remove = pify(fs.remove) const writeFile = pify(fs.writeFile) +const mkdirp = pify(fs.mkdirp) const defaults = { dir: 'dist', @@ -53,8 +54,10 @@ module.exports = function () { debug('Generate file: ' + path) path = join(distPath, path) // Make sure the sub folders are created - fs.mkdirsSync(dirname(path)) - return writeFile(path, html, 'utf8') + return co(function * () { + yield mkdirp(dirname(path)) + yield writeFile(path, html, 'utf8') + }) }) promises.push(promise) })