bower一个强大的前端依赖包管理工具

  在介绍以前,你必须的知道bower是基于nodejs开发的,因此你首先必须得有个nodejs环境,至于这么安装nodejs网上一大堆教程,对了使用bower还须要安装git,这里就很少说了。前端

 

####bower带来的好处node

  假如你有一个项目,里面须要用到了JQuery在正常状况下咱们须要到jQuery官方网站下载库,这样的话,每次jquery更新,咱们又要到jQuery官方下载,那这样的话就很麻烦了,若是有一款工具可以输入一个命令让咱们选择要下载的版本,而且若是想把咱们项目里面的全部库更新到最新版也只须要输入一个命令那是否是很方便,bower的另一个好处就是若是你安装bootstrap那么它会自动下载jquery,由于bootstrap依赖了jquery,简单的来讲只要咱们下载的那个库依赖了另外的库那么bower会自动帮咱们下载依赖的库,bower就是这么强大。jquery

 

###bower的安装git

  npm install -g bower 表示安装到全局环境npm

###bower的使用json

  1. 经过bower下载库bootstrap

    bower install (包的名称如:jquery)[#版本如:#1.7] 版本可选,若是没有写,默认下载最新版
    如:bower install bootstrap#2.2网络

  2. 若是须要更新因此的库,咱们能够输入如下命令less

    bower update工具

若是须要生成一个你下载个包的因此信息,好比你在一个团队中,你想让其余人知道你都用了哪些库,而且它们的版本是多少,那么咱们能够经过如下命令来完成。

  咱们须要先初始化一个包描述。它会在你的当前执行环境目录中建立一个bower.json的目录

    `bower init -y`

  而后经过

    `bower install jquery --save`

  它会在bower.json文件中加入jquery的版本信息,若是你想添加多个能够经过空格bower install jquery bootstrap less --save

如下是bower.json文件的内容

{
  "name": "down",
  "authors": [
    "xxxxxxxx"
  ],
  "description": "",
  "main": "",
  "moduleType": [],
  "license": "MIT",
  "homepage": "",
  "private": true,
  "ignore": [
    "**/.*",
    "node_modules",
    "bower_components",
    "test",
    "tests"
  ],
  "dependencies": {
    "bootstrap": "^3.3.6",
    "less": "^2.6.1",
    "jquery": "^2.2.2"
  }
}

 

  固然若是你是nodejs新手或许你会有些茫然,由于这里并非一个nodejs基础教程,若是你想了解想学node的话还须要到网络中学习。

  bower除了这些好处觉得,还有一些更增强大的功能,那就须要你们去发现了,我这里就再也不介绍了,毕竟我也是刚刚开始学习node

------------------------------------------------------分割线---------------------------------------

bower与npm的关系

   安装bower须要经过npm来安装

bower与npm的区别:

  1. 在以前的npm版本中,它不能共享依赖的代码,也是就说,在之前的npm版本中,若是你下载了一个bootstrap,由于bootstrap是依赖jquery的,因此它会把jquery也下载下来,可是若是你的另一个库也用到了jquery,那么它也会去下载一个jquery,这样的话,代码就重复了。

  它们的结构就像这样:

    bootstrap\jQuery

    xxxxxxxxx\jQuery

  它们重复了对吧,不过好像在npm的最新版本中解决了这个问题。

  2. npm 会将开发环境一块儿下载下来,bower 只会下载 编译后的前度模块。

  3. NPM主要运用于Node.js项目的内部依赖包管理,安装的模块位于项目根目录下的node_modules文件夹内。而Bower大部分状况下用于前端开发,对于CSS/JS/模板等内容进行依赖管理,依赖的下载目录结构能够自定义。  -- 本段内容是在网上找到的。

  所谓的自定义目录结构的意思是说,你在那个文件目录打开的bower,那么它就会在那个文件下,下载你须要的包,而npm就不支持这个。

 

总结:咱们能够简单的来理解npm是用来管理nodejs模块的也就是包,而bower是用来管理咱们前端库的。

相关文章
相关标签/搜索