環境: [email protected] [email protected] [email protected] [email protected]Browserify - 變換的package.json的符號鏈接模塊npm3不工作
試圖構建與[email protected]
工作的應用程序和[email protected]
,但在升級到[email protected]
和[email protected]
時出現問題。請允許我嘗試解釋問題。
在
app/node_modules
我已經通過通過npm link
符號鏈接npm install
和本地模塊安裝的模塊。本地模塊已在其
package.json
如指定browserify變換 -
}, "devDependencies": { "babel-preset-es2015": "^6.5.0", "babelify": "^7.2.0" }, "browserify": { "transform": [ [ "babelify", { "presets": [ "es2015" ] } ] ] }
試圖建立我得到錯誤:
"Browserify Error: Couldn't find preset "es2015" relative to directory"
NPM 3已經夷爲平地依賴樹,所以babel-preset-es2015
的yinkinked模塊需要位於app
的node_modules
。根據@substack here的解釋和這個例子here browserify應該從符號鏈接模塊走到樹上app
並在那裏檢查node_modules
,但是它似乎沒有這樣做。
我的目錄結構是這樣的:
~/projects |-- app |-- entry.js (this file can see babel-preset just fine) |-- node_modules |-- babel-preset-es2015 |-- my-module (symlink pointing at ~/projects/modules-shared/my-module) |-- index.js (we want babelify to transform this file) |-- modules-shared |-- my-module
如果我在modules-shared
文件夾中安裝babel-preset-es2015
,browserify找到預設。
你有沒有解決你的問題? – Shawn