Browserify 筆記一:CLI介紹
在Node.js 筆記三:了解npm中,我說過轉了一大圈。很多人還是選擇使用npm script作為腳本自動化工具,以加速整個開發。
相對之下, browserify
類似于CLI命令行工具,與npm script
的結合非常巧妙。
mapbox-gl -js
的構建就是基于browserify,并沒有復雜的配置文件。 browserify只是主體的打包工具,還包含了各式各樣的插件,去輔助整個打包工作的完成。作為一個打包工具,你可以選擇直接用npm script
里面的uglify.js等,一般做簡單的demo。
browserify
--outfile, -o 把browserify的文件寫入該文件。沒有特別說明,就輸出到當前屏幕。
--require, -r 一個模塊或者文件是需要被引用的。用冒號分隔符區設置目標。
--entry, -e 接入點。
--ignore, -i 替換用空文件一個文件,文件可以是多文件。
--exclude, -u 從輸出文件中忽略文件,文件可以是多文件。
--external, -x 在另一個bundle參考文件,文件可以是多文件
--transform, -t 在上層文件中,用一個轉換模塊
--command, -c 在上層文件中,用一個轉換命令
--standalone -s 產生一個UMD用提供的輸出名。
這個bundle可以在別的模塊系統中使用,如果沒有模型系統化被找到,會設置為窗體名。
--debug -d 允許source map去debug你的文件。
watchify
觀測文件的變化,變化后實現實時打包。
Standard Options:
--outfile=FILE, -o FILE
這選項是必須的。把browserify的內容寫成這個文件中。
如果該命令包含文件操作符 `|` 或 `>`, 它將被認為是一個命令行命令,
文件將會被打包。
--verbose, -v [default: false]
顯示文件在什么時候被寫入和花了多長時間(秒)。
--version
顯示watchify和browserify的版本。
Advanced Options:
--delay [default: 100]
在改變被更改后,在執行“更新”前的時間等待(時間是毫秒)。
--ignore-watch=GLOB, --iw GLOB [default: false]
根據對應的pattern去忽略監控文件變化,默認 "**/node_modules/**".
--poll=INTERVAL [default: false]
用輪詢去檢測修改變化。這選項非常有用如果你在檢測NFS系統.
unassertify
與browserify
結合使用,方便你在編碼的過程當中使用console.assert()
和assert
的庫。在發布時,unassertify
會自動幫你去除多余的斷言。
例如:
browserify -t unassertify /path/to/demo/math.js > /path/to/build/math.js
unflowify
用Browserify轉換,其中用flow-remove-types
移除 Flow的標識。
bubleify
使用es2015轉換成為es5。
babelify
使用babel結合es6實現轉換。
package-json-versionify
移除掉整個package.json
以減少輸出文件的大小,除了version字段。
參考
轉載,請表明出處。總目錄前端經驗收集器