Bower 手冊

安裝 Bower

使用 npm 安裝 Bower。(Bower 依賴於 Node, npm 和 Git。)node

$ npm install -g bower

基本用法

安裝程序包

程序包安裝命令 bower install,默認安裝目錄 bower_components/jquery

$ bower install <package>

package 多是 GitHub Shorthand,或者是 Git 倉庫地址,或者 URL。git

# registered package
$ bower install jquery

# GitHub shorthand
$ bower install desandro/masonry

# Git endpoint
$ bower install git://githu.com/user/package.git

# URL
$ bower install http://example.com/script.js

更改默認安裝目錄

要更改默認安裝目錄,可在工做目錄根路徑下建立 .bowerrc,添加如下內容:es6

{
        "directory": "my_components"
    }

關於 bower.json

Bower 使用 bower.json 做爲程序包清單。(早期版本使用 component.json 做爲清單文件)。github

你可使用 $ bower init 命令來建立 bower.json 文件,如下是 bower.json 示例:npm

{
  name: 'hello-world',
  version: '0.1.0',
  authors: [
    'Yin Zhenhua <hendikoy@gmail.com>'
  ],
  description: 'the first package.',
  main: 'hello.js',
  keywords: [
    'amd'
  ],
  license: 'MIT',
  ignore: [
    '**/.*',
    'node_modules',
    'bower_components',
    'test',
    'tests'
  ]
}

name

必填 註冊到 bower 倉庫的名字。
* 名字必須具備惟一性。
* 命名採起 slug style,例如 unicorn-cake。
* 名字包含小寫字母、數字、連字符或英文句號(後二者不能位於開始和結束位置)。
* 不能連續使用連字符和句號。
* 不能多於 50 個字符。json

version

暫時沒有使用,目前 bower 使用 Git tag 做爲版本號。api

description

程序包簡略描述,最多不超過 140 個字符。數組

main

爲程序包創建一個入口文件是頗有必要的,每一類型文件只能有一個入口文件。入口文件包含模塊的輸入物和導入物。緩存

圖片和字體文件能夠被 JS 或 Sass 文件使用,所以它們不能算做入口文件。

*    使用含有模塊輸入物和輸出物的文件做爲入口文件。
*    不要使用壓縮後的文件。
*    不要使用圖片、字體、音頻或視頻文件做爲入口文件。
*    文件名不要包含版本號。
*    不要使用 `js/*.js` 的這樣用法。

dependencies

依賴包是一個鍵位包名,值爲標識符或 URL 的哈希字典。

*    鍵必須是有效名字。
*    值必須是一個有效版本、Git URL 或 URL。
*    Git URL 必須在結尾處添加 # 符號,並附註 revision SHA,branch 或 tag。
*    若是是 GitHub 項目,則使用 owner/package 這樣的簡寫方式。
*    本地調試時可使用本地路徑做爲值。

devDependencies

調試依賴包和 dependencies 規則相同,但僅作本地開發時使用。

moduleType

main 中定義模塊的類型。

*    `globals`:表示模塊直接導入全局名字。
*    `amd`:符合 AMD 規範,例如 RequireJS,使用 `define()` 語法。
*    `node`:符合 node 和 CommonJS 規範,使用 `module.exports` 語法。
*    `es6`:符合 ECMAScript 6 模塊規範,使用 `export` 和 `import` 語法。
*    `yui`:符合 YUI 模塊規範,使用 `YUI.add()` 語法。

keywords

name 字段規則相同。

authors

做者名錄。

homepage

主頁。

repository

源文件所處倉庫。

liscense

受權許可。

ignore

安裝包的時候須要忽略的模塊。

resolutions

若是兩包發生衝突,則自動根據該字段解析依賴包。

private

若是設置爲 true,則不能發佈該包。這樣作是爲了不意外發布。

維護依賴包

使用 bower install <package> --save 命令將 <package> 添加到 bower.jsondependencies 數組。

使用 bower install <package> --save-dev 命令將 <package> 添加到 bower.jsondevDependencies 數組。

註冊程序包

註冊後的程序包可使用 bower install <package> 命令進行安裝。

*    包名必須符合 bower.json 規範。
*    項目根目錄必須存在合法的 `bower.json` 文件。
*    包必須使用 [semver](http://semver.org/) Git tag。
*    你的包必須是公開的,其餘人均可以訪問到你的 Git 倉庫,記住推送 Git tags。
*    對於私有包,使用私有的 [Bower Registry](https://github.com/bower/registry)。

使用 bower register 命令註冊包:

$ bower register <my-package-name> <git-endpoint>

例如:

$ bower register example git://github.com/user/example.git

Bower 註冊如今還不支持身份驗證。

Bower 不支持 GitHub 風格的命名(org/repo),但你可使用 - 符號來命名相關聯的包,例如 angular-

註銷程序包

使用命令 bower unregister 註銷你的代碼包。你首先要使用 bower login 來驗證 GitHub 身份,確保你是代碼包的貢獻者。

bower login
# enter username and password
? Username:
? Password:
#unregister packages after successful login
bower unregister <package>

你也能夠手動請求註銷代碼包

API

cache

$ bower cache clean
$ bower cache clean <name> [<name> ...]
$ bower cache clean <name>#<version> [<name>#<version> ..]

清理緩存的程序包。

$ bower cache list
$ bower cache list <name> [<name> ...]

顯示緩存的程序包。

help

$ bower help <command>

home

$ bower home
$ bower home <package>
$ bower home <package>#<version>

打開程序包主頁。

info

$ bower info <package>
$ bower info <package> [<property>]
$ bower info <package>#<version> [<property>]

顯示程序包或某一個版本的程序包信息。

install

$ bower install [<options>]
$ bower install <endpoint> [<endpoint> ..] [<options>]

安裝項目依賴包,或者指定的終端地址集。

終端有三種形式:

*    <package>
*    <package>#<version>
*    <name>=<package>#<version>

其中:

*    <package> 是 URL,物理路徑或註冊名。
*    <version> 是有效範圍、commit、分支等。
*    <name> 本地配置的名稱。

lookup

$ bower lookup <name>

查詢程序包 URL。

prune

$ bower prune

卸載本地多餘程序包。

register

$ bower register <name> <url>

註冊程序包。

$ bower search
$ bower search <name>

查找程序包。

update

$ bower update <name> [<name> ..] [<options>]

根據 bower.json 內容安裝最新的程序包。

update options

* `-F`, `--force-latest`:強制安裝最新版本(不管衝突與否)
* `-p`, `--production`:不要安裝項目的 devDependencies。

uninstall

$ bower uninstall <name> [<name> ..] [<options>]

從本地 bower_components 目錄卸載程序包。

uninstall options

* `-S`, `--save`:從 bower.json dependencies 中移除卸載的程序包。
* `-D`, `--save-dev`:從 bower.json devDependencies 中移除卸載的程序包。

unregister

$ bower unregister <package>

卸載程序包。

相關文章
相關標籤/搜索