簡體   English   中英

Browserify將相對路徑分配給模塊,而不是絕對路徑

[英]Browserify assign relative paths to modules instead of absolute paths

給定此文件樹:

src
  - main.js
  ui
    - foo.js
    - bar.js

此命令生成已將標識符設置為絕對模塊路徑的模塊:

browserify ./src/**/*.js -o ./dist/bundle.js --full-paths

結果模塊ID:

"/Users/rikschennink/.../src/ui/foo.js"

有沒有辦法使這些模塊路徑相對? 如果省略--full-paths命令, --full-paths索引作為模塊標識符,因此無法正常工作。

我想捆綁所有模塊,但仍然能夠像這樣按需求路徑引用它們。

var module = require('/ui/foo');

我知道我可以給模塊起別名,但這需要手動為每個模塊起別名,這實際上不是可行的解決方案。


我使用了JavaScript函數來替換輸出流中的絕對路徑。 您可以在這里找到它: https : //github.com/rikschennink/conditioner-boilerplate-browserify/blob/master/browserify.js

我只會用sed為我修復東西

browserify -r ./src/ui/bar -r ./src/main ./src/**/*.js --full-paths | sed "s|$PWD/src||g" > ./dist/bundle.js

然后生成的最后一行是

},{}]},{},["/main.js","/ui/bar.js","/ui/ui.js"]);

就像你想要的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM