我尝试使用Browserify和Gulp将已编译的js捆绑文件保存到生产目录中。
但是,Browserify似乎找不到输出目录的有效路径。
以下是代码片段:
我尝试使用手动方式,步骤如下:
但是,Browserify似乎找不到输出目录的有效路径。
以下是代码片段:
browserify({ debug: true })
.transform(babelify.configure({
presets: ['es2015', 'react']
}))
.require('./client/client.js', { entry: true })
.bundle()
.on('error', (err) => {
console.log(err);
})
.on('end', () => {
console.timeEnd();
})
.pipe(gulp.dest('dist/public/bundle.js'));
我遇到了如下错误:
[19:37:57] Finished 'lint' after 14 s
path.js:7
throw new TypeError('Path must be a string. Received ' + inspect(path));
^
TypeError: Path must be a string. Received undefined
at assertPath (path.js:7:11)
at Object.resolve (path.js:1148:7)
at DestroyableTransform.saveFile [as _transform]
我尝试使用手动方式,步骤如下:
.pipe(fs.createWriteStream(`${__dirname}/dist/public/bundle.js`));
它不起作用。 但下面的代码能够正常工作:
.pipe(fs.createWriteStream(`${__dirname}/dist/bundle.js`));
在该目录下存在文件夹'dist',但不存在'dist'文件夹中的'public'文件夹。
我认为这就是原因,但我该如何解决它,将捆绑文件保存到'dist/public'中呢?