我想要来自 dev->的所有js文件js 文件夹和 dev-> bootstrap-> js 应缩小为 build-> js 文件夹和构建 - > bootstrap-> js
我正在尝试使用以下代码,但这不起作用
uglify: {
build: {
files: [{
expand: true,
src: '**/*.js',
dest: ['build/js', 'build/lib/bootstrap/js'],
cwd: ['dev/js', 'dev/lib/bootstrap/js']
}]
}
}
出现错误 -
$ grunt
Running "uglify:build" (uglify) task
Warning: Path must be a string. Received [ 'dev/js', 'dev/lib/bootstrap/js' ] Us e --force to continue.
Aborted due to warnings.
<pre>
// incoming
dev
|js
|lib
|bootstrap
|js
// output
build
|js
|lib
|bootstrap
|js
</pre>
答案 0 :(得分:0)
如果你查看building the files object dynamically的grunt文档,你会发现以下定义:
dest
目标路径前缀。
cwd
所有src
次匹配都相对于(但不包括)此路径。
这告诉我们dest
必须是一个字符串,不是一个数组,它必须是所有编译文件所在的文件夹。在您的示例中,这是构建/文件夹。
其次,它告诉我们cwd
是一个字符串,表示要在其下找到所有源文件的文件夹。此外,它告诉我们当src文件路径映射到dest文件路径时,将不会包含此文件夹前缀。在您的示例中,所有源文件都相对于dev /文件夹。
您的uglify:build任务的grunt配置应更新如下:
files: [{
expand: true,
cwd: 'dev/',
src: '**/*.js',
dest: 'build/'
}]