Bower 使用指南
Bower是一個包管理工具。包的內(nèi)容沒有限制,比如:js庫,框架,圖片/字體資源等等或者它們的組合都可以,只要是你需要的就行,你也可以打包一些內(nèi)容通過在bower上登記注冊公開對外發(fā)布(當然Bower也支持提建私有包庫)。
常用命令
安裝
npm install -g bower
初始化
bower init
通過問答向?qū)У姆绞皆诋斍澳夸浬梢粋€bower.json文件。
查詢包信息和版本
bower info 包名
這個命令可以查看一個包的所有版本(所以也能知道最新版本號),并顯示最新版本的包信息(bower.json),并下載最新版本的包到本地緩存(如果之前沒下載)。
bower info 包名#版本號
查看包的某個版本的詳細信息。
安裝包
bower install
安裝當前目錄下bower.json中的指定所有包。生產(chǎn)環(huán)境部署時建議使用 -p 或 --production參數(shù),這種情況不會安裝devDependencies。
bower install 包名 --save
安裝指定的包。
如果使用參數(shù) -S 或 --save 則安裝完后,會把包名及版本號添加到bower.json的dependecies配置項數(shù)組中(方便以后重新安裝)。
如果使用參數(shù) -D 或 --save-dev 則安裝完后,會把包名及版本號添加到bower.json的devDependecies配置項數(shù)組中。
如果不使用參數(shù),則只安裝包到bower_components目錄,不修改bower.json文件。
更新
bower update 包名
搜索
bower search 包名
卸載
bower uninstall 包名
不支持一次卸載所有的包,只能手動全部刪除。
卸載包并不從緩存中刪除,只是安裝目錄移除,下次安裝會優(yōu)先從本地緩存中復制安裝。
緩存
Bower在安裝包的時候,會先下載包到本地緩存,然后再復制到安裝位置。
緩存位置默認:
Win:C:Users用戶名AppDataLocalbowercachepackages
Linux:~/.bower/packages
瀏覽列表
bower cace list [package...]
刪除緩存
bower cache clean
刪除除所有本地緩存
bower cache clean <package>#<version>
刪除除指定包的緩存,還可以指定版本。
.bowerrc 文件
這個文件主要用來配置安裝路徑,如果不指定則默認安裝到當前目錄下的bower_components目錄中。
{"directory": "bower_components", //包安裝位置"storage": {"packages" : "~/.bower/packages" //包本地緩存位置} }其他配置項參見:bowerrc/spec
bower.json 文件
無論你是使用bower來為項目管理外部依賴,還是準備制作一個包,都是通過bower.json文件來進行的,這個文件可以說是bower運行的核心。bower.json的配置項和其他包管理工具,比如npm,composer的都差不多,你也可以通過分析這個文件來思考包管理器是如何運行的。
{"name":"", //必須,如果需要注冊包,則該包名唯一。"description":"", //可選,包描述"main":[], //可選,入口文件,bower本身不使用,供第三方構(gòu)建工具會使用//每種文件類型只能有一個。"ignore":[], //可選,文件或目錄列表。bower安裝的時候?qū)⒑雎栽摿斜碇械奈募?/bower是從git倉庫或壓縮包下載一個包,里面的文件并不一定全部需要。"dependencies":[], //依賴包,name:value,value可以是包的semver //range(版本號范圍),也可以直接是一個包的git地址或壓縮包地址。"devDependencies":[], //開發(fā)依賴包,僅僅在開發(fā)過程中測試或者編譯文檔用,部署生產(chǎn)環(huán)境是不需要。//格式和dependencies 相同"resolutions":[], //包引用沖突自動使用該模塊指定的包版本//格式和dependencies 相同"overrides" :[ //這個也很關(guān)鍵,可以覆蓋一個包中的默認設(shè)置,比如main里面設(shè)定的入口文件"package-name":{ //這樣可以根據(jù)需要,讓第三方工具只打包需要的文件。"main":[]}],"moduleType":"", //可選,指定包采用那種模塊化方式(globals,amd,node,es6,yui)"private":Boolean, //是否公開發(fā)布當前包,如果只是使用bower來管理項目的包,設(shè)置為true."license":"", //授權(quán)方式(GPL-3.0,CC-BY-4.0.....)"keywords":[], //可選,方便注冊后容易被其他人搜索到。"authors":[], //作者列表"homepage":[], //主頁,包介紹頁"repository":{ //包所在倉庫。"type": "git","url": "git://github.com/foo/bar.git"}, }bower用這套格式管理所有的包,所以下載的每個包中都會包含一個bower.json文件。
如果只是使用bower作為項目的包管理工具,上述配置項只需關(guān)注:dependencies, devDependencies, resolutions,overrides即可
如果你把自己開發(fā)的內(nèi)容打包發(fā)布出去,這個時候才需要配置其他項。
配置項的更多解釋可以參考:https://github.com/bower/spec...
semver range
Bower使用semver range來匹配版本。
常用的版本區(qū)域表達式:
比較符: < > <= >= =
范圍:1.2.3 - 2.3.5
通配符:1.2.* 匹配:大于1.2.0小于1.3.0
波浪范圍:~1.2.3 匹配:大于當前版本,小于次末位+1,本例中是 大于1.2.3小于1.3.0
插入符范圍:^1.2 匹配:大于當前版本,小于從左側(cè)開始第一個非零值+1,本例大于1.2小于2.0
還支持一些函數(shù)判斷,就不舉例了。。。。
總結(jié)
以上是生活随笔為你收集整理的Bower 使用指南的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: rsync 常用命令及格式
- 下一篇: 利用workerman+html开发简单