2016-12-01 21 views
0

我加入鲍尔到项目,该项目已在使用咕嘟咕嘟。我的文件夹结构是这样的:杯和鲍尔 - 创建正确的文件结构

|- bower_components 
| |- dependency1 
| | |- dist 
| |  |- lib1.js 
| |  |- lib1.min.js 
| | 
| |- dependency2 
|  |- core 
|   |- sub 
|   | |- extra.js 
|   | 
|   |- lib2.js 
| 
|- target 
    |- js 

我已经成功地复制所有第三方libreries目标使用main-bower-filesbower-normalize/JS。但它的扁平化(和我没有设置凉亭,规范化选项flatten为true!),所以它看起来像:

target 
|- js 
    |- lib1.js 
    |- extra.js 
    |- lib2.js 

文件lib1.jsextra.jslib2.js中被标记为bower.json配置文件main

我想达成什么是有文件的结构,如:

target 
|- js 
    |- dependency1 
    | |- lib1.js 
    | 
    |- dependency2 
     |- sub 
     | |- extra.js 
     | 
     |- lib2.js 

我会帮忙真是感激!

+0

显示你的gulpfile.js文件可能会有所帮助,也就是说有人可以用语法来帮助你。 – srussking

+0

你需要将'{base:'。'}'传递给你的gulp.src命令 – harishr

回答

1

经过gulp-flatten, 这将帮助您删除或替换文件的相对路径。和 还,我强烈建议 wiredep。它会自动 处理所有的亭子依赖你,以及依赖的顺序 的。希望这会帮助你。

你的源代码目录与凉亭的部件:

|- bower_components 
| |- dependency1 
| | |- dist 
| |  |- lib1.js 
| |  |- lib1.min.js 
| | 
| |- dependency2 
|  |- core 
|   |- sub 
|   | |- extra.js 
|   | 
|   |- lib2.js 
| 
|- target 
    |- js 

使用一饮而尽,扁平化 -

gulp.src(['bower_components/**/*.js']) 
    .pipe(flatten({ includeParents: [1, 1]})) 
    .pipe(gulp.dest('build/')); 

将创建这个结构(从上面的树形目录):

|- bower_components 
| |- dependency1 
| | |- lib1.js 
| | 
| |- dependency2 
|   |- sub 
|   | |- extra.js 
|   | 
|   |- lib2.js 

includeParents: [1, 1]如果经过作为两个数的阵列,从顶部和底部父母双方将被保持在所产生的文件的路径。

includeParents: 1如果作为正数传递,它将包括输出中顶级父母的数量。

includeParents: -1如果为负数通过,将包括最下层的父母在输出数量。