【发布时间】:2014-05-22 12:00:23
【问题描述】:
所以我的项目结构是我的根目录./ 中有一个src 和www 目录,其中还包含我的bower.json、gulpfile.js 和.bowerrc,其中directory 设置为@ 987654328@.
我的./src 中有一个index.html,我设置了一个 gulp 任务,将其通过wiredep 传递到凉亭包所在的./www。
不幸的是,它添加了所有依赖项,就好像它在 ./src 目录中一样,所以它们都带有 ../www/bower/ 这样的前缀,因为最终的 index.html 最终在 www 目录中,所以我摆弄了一些wiredep 的配置选项如下:
gulp.task('bower', function () {
gulp.src('./src/index.html')
.pipe(wiredep({
cwd: './www',
bowerJson: require('./bower.json'),
directory: '../.bowerrc'
}))
.pipe(gulp.dest('./www'));
});
但是我收到以下错误:
stream.js:94
throw er; // Unhandled stream error in pipe.
^
TypeError: Cannot read property 'main' of undefined
at findMainFiles (D:\Dropbox\University\MindFlipDOM\node_modules\wiredep\lib\detect-dependencies.js:53:37)
at D:\Dropbox\University\MindFlipDOM\node_modules\wiredep\lib\detect-dependencies.js:111:17
at forOwn (D:\Dropbox\University\MindFlipDOM\node_modules\wiredep\node_modules\lodash\dist\lodash.js:1301:15)
at Function.forEach (D:\Dropbox\University\MindFlipDOM\node_modules\wiredep\node_modules\lodash\dist\lodash.js:2595:9)
at detect (D:\Dropbox\University\MindFlipDOM\node_modules\wiredep\lib\detect-dependencies.js:312:5)
at wiredep (D:\Dropbox\University\MindFlipDOM\node_modules\wiredep\wiredep.js:178:39)
at Transform._transform (D:\Dropbox\University\MindFlipDOM\node_modules\wiredep\wiredep.js:217:34)
at Transform._read (D:\Dropbox\University\MindFlipDOM\node_modules\wiredep\node_modules\through2\node_modules\readable-stream\lib\_stream_transform.js:184:10)
at Transform._write (D:\Dropbox\University\MindFlipDOM\node_modules\wiredep\node_modules\through2\node_modules\readable-stream\lib\_stream_transform.js:172:12)
at doWrite (D:\Dropbox\University\MindFlipDOM\node_modules\wiredep\node_modules\through2\node_modules\readable-stream\lib\_stream_writable.js:238:10)
那我做错了什么?
【问题讨论】:
-
我之前也遇到过这个错误。原来我在我的 bower.json 文件中错误地包含了一个依赖项。也许你也在做同样的事情?
标签: javascript node.js bower gulp