前端的包管理-第三方庫的依賴

標(biāo)簽(空格分隔): 包管理 bower


開發(fā)過程中延柠,為了提升開發(fā)速度,不能什么功能都從底層的js代碼寫起吧费彼,各種兼容削咆,細(xì)節(jié)還是繁瑣的,所以必然要基于某個(gè)框架杖剪、庫去架構(gòu)你的站點(diǎn)冻押。這就涉及到引入人家的代碼庫,比如:常見的jQuery盛嘿、Underscore洛巢、bootstrap等。而且有些庫呢也不是基于原生js寫的次兆,底層還是依賴于某些庫稿茉,那你自己書寫代碼時(shí)就要注意了,依賴的順序芥炭,依賴的版本等漓库。傳統(tǒng)開發(fā),這些都是自己到相應(yīng)的官網(wǎng)下載蚤认,放到自己的項(xiàng)目目錄里米苹。但是,大前端時(shí)代來了砰琢,站點(diǎn)功能復(fù)雜度,以及從項(xiàng)目的長(zhǎng)久維護(hù)生命周期等角度都應(yīng)該對(duì)依賴的庫也就是包良瞧,做一個(gè)自動(dòng)化的處理陪汽,有這樣的一個(gè)工作幫我們處理包的各項(xiàng)管理工作。我不管誰依賴誰褥蚯、哪個(gè)版本依賴哪個(gè)版本挚冤。只是需要安心coding就可以。要誰就下載誰赞庶,使用時(shí)require進(jìn)來就ok训挡。

bower介紹

Bower 是 twitter 推出的一款包管理工具,基于nodejs的模塊化思想歧强,把功能分散到各個(gè)模塊中澜薄,讓模塊和模塊之間存在聯(lián)系,通過 Bower 來管理模塊間的這種聯(lián)系摊册。

包管理工具一般有以下的功能:

  1. 注冊(cè)機(jī)制:每個(gè)包需要確定一個(gè)唯一的 ID 使得搜索和下載的時(shí)候能夠正確匹配肤京,所以包管理工具需要維護(hù)注冊(cè)信息,可以依賴其他平臺(tái)茅特。
  2. 文件存儲(chǔ):確定文件存放的位置忘分,下載的時(shí)候可以找到棋枕,當(dāng)然這個(gè)地址在網(wǎng)絡(luò)上是可訪問的。
  3. 上傳下載:這是工具的主要功能妒峦,能提高包使用的便利性重斑。比如想用 jquery 只需要 install 一下就可以了,不用到處找下載肯骇。上傳并不是必備的窥浪,根據(jù)文件存儲(chǔ)的位置而定,但需要有一定的機(jī)制保障累盗。
  4. 依賴分析:這也是包管理工具主要解決的問題之一寒矿,既然包之間是有聯(lián)系的,那么下載的時(shí)候就需要處理他們之間的依賴若债。下載一個(gè)包的時(shí)候也需要下載依賴的包符相。

功能介紹,摘自文章:http://chuo.me/2013/02/twitter-bower.html

安裝bower

$ npm install bower -g

bower使用

創(chuàng)建一個(gè)bower.json蠢琳,用來保存包信息啊终。

$ bower init

安裝生產(chǎn)環(huán)境的依賴,保存到bower.json傲须。

$ bower install PACKAGE --save

安裝開發(fā)環(huán)境的依賴蓝牲,保存到bower.json。比如:gulp泰讽、browser-sync等在項(xiàng)目開發(fā)時(shí)才使用的自動(dòng)化工具例衍。

$ bower install PACKAGE --save-dev

進(jìn)入項(xiàng)目目錄,安裝bootstrap到項(xiàng)目

$ bower install bootstrap

我們發(fā)現(xiàn)bootstrap已卸,對(duì)jquery是有依賴的佛玄。因?yàn)闀?huì)把自己對(duì)應(yīng)的依賴一同下載下來。不用手動(dòng)處理依賴?yán)病?/p>

bower命令查看

$ bower

Usage:
    bower  [] []

Commands累澡,列出了bower支持的各種命令梦抢。

cache:bower緩存管理
help:顯示Bower命令的幫助信息
home:通過瀏覽器打開一個(gè)包的github發(fā)布頁
info:查看包的信息
init:創(chuàng)建bower.json文件
install:安裝包到項(xiàng)目
link:在本地bower庫建立一個(gè)項(xiàng)目鏈接
list:列出項(xiàng)目已安裝的包
lookup:根據(jù)包名查詢包的URL
prune:刪除項(xiàng)目無關(guān)的包
register:注冊(cè)一個(gè)包
search:搜索包
update:更新項(xiàng)目的包
uninstall:刪除項(xiàng)目的包

小結(jié)

bower很方便的進(jìn)行包的搜索、安裝和卸載愧哟。
其實(shí)模塊化奥吩,版本依賴,開發(fā)類庫蕊梧,發(fā)布類庫霞赫,安裝類庫,都是一條命令望几,快把項(xiàng)目模塊化吧绩脆。
bower和npm兩個(gè)都是包管理器bower偏重于前端一些,,對(duì)于CSS/JS/模板等內(nèi)容進(jìn)行依賴管理。NPM主要運(yùn)用于Node.js項(xiàng)目的內(nèi)部依賴包管理靴迫,安裝的模塊位于項(xiàng)目根目錄下的node_modules文件夾內(nèi)惕味。
在實(shí)際項(xiàng)目中,NPM和Bower都會(huì)被運(yùn)用進(jìn)去玉锌。并且Bower的安裝和升級(jí)全都依賴于NPM名挥。

具體我在另外一篇文章中有提到:http://www.reibang.com/p/23141d29998e

----------------------------------------------------喜歡就動(dòng)動(dòng)小手哈。------------------------------------------------------

--------------------------------------你的支持是灑家-麥殼-macrolam前進(jìn)的動(dòng)力--------------------------------------

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末主守,一起剝皮案震驚了整個(gè)濱河市禀倔,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌参淫,老刑警劉巖救湖,帶你破解...
    沈念sama閱讀 216,544評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異涎才,居然都是意外死亡鞋既,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門耍铜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來邑闺,“玉大人,你說我怎么就攤上這事棕兼《妇耍” “怎么了?”我有些...
    開封第一講書人閱讀 162,764評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵伴挚,是天一觀的道長(zhǎng)靶衍。 經(jīng)常有香客問我,道長(zhǎng)茎芋,這世上最難降的妖魔是什么摊灭? 我笑而不...
    開封第一講書人閱讀 58,193評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮败徊,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘掏缎。我一直安慰自己皱蹦,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評(píng)論 6 388
  • 文/花漫 我一把揭開白布眷蜈。 她就那樣靜靜地躺著沪哺,像睡著了一般。 火紅的嫁衣襯著肌膚如雪酌儒。 梳的紋絲不亂的頭發(fā)上辜妓,一...
    開封第一講書人閱讀 51,182評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼籍滴。 笑死酪夷,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的孽惰。 我是一名探鬼主播晚岭,決...
    沈念sama閱讀 40,063評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼勋功!你這毒婦竟也來了坦报?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,917評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤狂鞋,失蹤者是張志新(化名)和其女友劉穎片择,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體骚揍,經(jīng)...
    沈念sama閱讀 45,329評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡字管,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了疏咐。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片纤掸。...
    茶點(diǎn)故事閱讀 39,722評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖浑塞,靈堂內(nèi)的尸體忽然破棺而出借跪,到底是詐尸還是另有隱情,我是刑警寧澤酌壕,帶...
    沈念sama閱讀 35,425評(píng)論 5 343
  • 正文 年R本政府宣布掏愁,位于F島的核電站,受9級(jí)特大地震影響卵牍,放射性物質(zhì)發(fā)生泄漏果港。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評(píng)論 3 326
  • 文/蒙蒙 一糊昙、第九天 我趴在偏房一處隱蔽的房頂上張望辛掠。 院中可真熱鬧,春花似錦释牺、人聲如沸萝衩。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽猩谊。三九已至,卻和暖如春祭刚,著一層夾襖步出監(jiān)牢的瞬間牌捷,已是汗流浹背墙牌。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留暗甥,地道東北人喜滨。 一個(gè)月前我還...
    沈念sama閱讀 47,729評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像淋袖,于是被迫代替她去往敵國和親鸿市。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 什么是bower Bower —— A package manager for the webbower是前端包管...
    這個(gè)名字成么閱讀 2,234評(píng)論 0 5
  • 大家好内舟,我是IT修真院深圳分院第3期的學(xué)員,一枚正直純潔善良的前端程序員初橘,今天給大家分享一下验游,修真院官網(wǎng)前端工程師...
    大大頭大閱讀 2,953評(píng)論 0 1
  • 一、NodeJS環(huán)境 什么是nodejs node是一個(gè)基于chrome v8引擎的javascript的運(yùn)行環(huán)境...
    EndEvent閱讀 1,253評(píng)論 0 1
  • 我是從正月十六那天開始決定早上六點(diǎn)起床散步并付諸行動(dòng)的保檐,我想耕蝉,如果一個(gè)愛睡懶覺的人可以堅(jiān)持每天早起的話,那么她就一...
    一尾ai池塘閱讀 146評(píng)論 0 0
  • 翠盡紅銷減卻神夜只,天教風(fēng)韻落風(fēng)塵垒在。 頹蛩夜里時(shí)時(shí)擾,怨鳥塘邊處處聞扔亥。 翻覆殘香成散夢(mèng)场躯,游離落瓣似孤魂。 秋深雨亂難得...
    莫愁Jessie閱讀 293評(píng)論 3 13