閱讀586 返回首頁    go 阿裏雲 go 技術社區[雲棲]


《JavaScript開發框架權威指南》——1.6 維護依賴鏈

本節書摘來自異步社區《JavaScript開發框架權威指南》一書中的第1章,第1.6節,作者:【美】Tim Ambler , Nicholas Cloud著,更多章節內容可以訪問雲棲社區“異步社區”公眾號查看

1.6 維護依賴鏈

Bower給開發者帶來的一個主要好處,就是可以非常方便地對整個項目的依賴鏈以一種相對受控的方式進行集中升級。為此,我們先來看一下本章示例項目所包含的依賴項列表(見清單)。

清單1-8 安裝並列出示例項目所需的Bower包

$ bower install
bower bootstrap#3.2.0    cached git://github.com/twbs/bootstrap.git#3.2.0
bower bootstrap#3.2.0  validate 3.2.0 against git://github.com/twbs/bootstrap.git#3.2.0
bower jquery#>= 1.9.0    cached git://github.com/jquery/jquery.git#2.1.3
bower jquery#>= 1.9.0  validate 2.1.3 against git://github.com/jquery/jquery.git#>= 1.9.0
bower bootstrap#3.2.0   install bootstrap#3.2.0
bower jquery#>= 1.9.0   install jquery#2.1.3

bootstrap#3.2.0 public/bower_components/bootstrap
└──  jquery#2.1.3

jquery#2.1.3 public/bower_components/jquery

$ bower list
bower check-new Checking for new versions of the project dependencies..
example-bootstrap#1.0.0 /opt/example-bootstrap
└─┬  bootstrap#3.2.0 (latest is 3.3.2)
 └──   jquery#2.1.3

多虧Bower為我們提供了這樣簡單的示意圖,來描述項目所需的依賴項以及它們之間的關係。可以看到,我們的項目依賴Bootstrap,而Bootstrap又依賴jQuery。此外,Bower還為我們打印出了每個組件當前安裝的版本。

注意:
 

許多第三方庫並不是自包含(self-contained,亦即獨立自足的),Bootstrap(它有依賴項jQuery)就是一個例子。當添加這樣的包的時候,Bower可以非常智能地識別出額外的依賴項,並在缺失時主動將其添加到項目中。但需要注意的是,與那些複雜的包管理工具(例如npm)不同,Bower使用平坦的文件夾結構(Flat Folder Structure,指文件夾模式沒有深層次的嵌套)來存儲所有的軟件包。這就意味著如果不小心的話,你可能會遇到版本衝突的問題。
在清單中,Bower提示Bootstrap有一個版本號為3.3.2的可用更新(當前項目中的Bootstrap為3.2.0版)。要升級此依賴項,隻需要在項目清單文件中引用新版本,然後重新運行install命令即可,如清單所示。

清單1-9 在更新項目所依賴的Bootstrap之後,重新安裝Bower包

$ bower install
bower bootstrap#3.3.2   cached git://github.com/twbs/bootstrap.git#3.3.2
bower bootstrap#3.3.2 validate 3.3.2 against git://github.com/twbs/bootstrap.git#3.3.2
bower bootstrap#3.3.2  install bootstrap#3.3.2

bootstrap#3.3.2 public/bower_components/bootstrap
└──  jquery#2.1.3

最後更新:2017-06-05 14:01:53

  上一篇:go  協同辦公協同的到底是什麼?
  下一篇:go  《JavaScript開發框架權威指南》——1.5 語義化版本控製