guilipan / gulp-seajs-transport

transport seajs module gulp plugin
22 stars 8 forks source link

模块依赖ID的抽取问题 #6

Closed shiminghua closed 9 years ago

shiminghua commented 9 years ago

在设置base参数时,模块ID的抽取不正确。 例:D:/gulp/src/js/home/b

guilipan commented 9 years ago

模块的ID是按照UNIX路径来的,不要设置成windows路径,base参数是相对于src时候的路径来的

shiminghua commented 9 years ago

gulp.task('seajs', function () { gulp.src('./src/js/*.js') .pipe(transport({base : "Users/fangguoliang/Documents/mine/gulp/src"})) .pipe(gulp.dest('./dist/js/home')); });

unix系统下base需要这样配置才能得到预期模块ID。和API上的写法不一致,略麻烦

guilipan commented 9 years ago

gulp默认使用的是vinyl的虚拟文件格式,以你的例子中 gulp.src('./src/js/*.js')如果后面不配置base则默认为当前的"./src/js",所以你不需要写那么长串

比如Users/fangguoliang/Documents/mine/gulp/src/js/a.js文件transport后默认应该就是a Users/fangguoliang/Documents/mine/gulp/src/js/next/b文件transport后默认应该就是next/b