Bower的入门
接触Bower一年多了,今天对于它的有一些疑问,并且写此博文记录之。
首先把Bower的官网附上: https://bower.io/
(一)什么是Bower
Bower:就是一个前端包管理工具。能够帮我们管理Web站点上的各种框架,类库等等。主要作用有如下:能够帮助我们跟踪前端包,并且保证他们是最新(或者是你指定的特定版本),Bower能够管理前端里面的HTML,CSS,JS,甚至还可以是图片。Bower还有一个最大的好处,它对我们前端进行了优化。如果多个包依赖于一个包,例如jQuery,那么Bower将只下载jQuery一次,这样就称为扁平依赖,它有助于减少页面加载。
( 二) 安装Bower
Bower需要node,npm,git环境。如何在windows安装node(npm继承在node里面)和git。直接去对应的官网下载,然后配置相应的环境变量。
通过NPM的方式安装:npm install bower -g
(三) 常用的Bower命令
3.1 bower init
这会在你的对应路径下面产生一个bower.json的文件,这个文件里面存放项目所需包的相关使用,可以用来作为项目重复安装使用,向Bower.com提交你的库的时候,该网站会列入在线索引(意思就是别人可以bower install你的库了)。
dependencies 记录生产环境依赖的库,devDependencies记录开发环境所依赖的库。
3.2 bower install

从例子来看吧,
bower install jQuery
不过一般不建议类似于上面这样使用。一般来说bower install jQuery --save-dev ,这个操作可以往bower.json里面写入对应的模块,它可以实现不同之间的重复安装。其他项目成员,拿到项目之后,只需要bower install 就好了。bower install是可以直接从bower.json里面读出来的,其他项目成员就不需要写bower install jQuery了。
命令格式里面的<endpoint> 可以有多种形式 :

1.bower install 包,2.bower install 包#版本,3.bower intall name=包#版本。
<package>是一个包URL,物理位置或注册表名称
<version>是一个有效的范围,提交,分支等。
<name>是它应该在本地的名称。
常用的bower install 格式
bower install jQuery#1.2
bower install github网址
bower 默认情况都会去bower.com上面找最新的包,除非指定版本号。记住一下,刚刚开始说的,它是扁平化安装的。
3.3 bower cache
缓存是前端比较头疼的东西。Bower cache清理缓存的方法,bower cache clean。列出缓存列表bower cache list
bower cache clean和上面的bower install类似,都是可以指定名称来bower cache clean.
3.4 bower update和bower unstall
都是和bower install类似。
3.5其他bower命令
bower into,bower help,其实很多命令都有的,它也有,都是类似的。
(四) 如何注册自己包到bower上面呢
就是很多公司都有自己一套前端库,如何把他们放到Bower上面呢
先去github上面建立一个库(项目)(公有,私有都行)或者其他,只要能让bower.com能访问到地址应该都可以。
比如我建立了一个叫做angualr-demo的库,然后加入bower init来管理这个库。
之后用bower register git上面的url

这样就完成了在bower.com上面的注册了,之后我们就可以bower install ngDemo下来看看了。
(五)可以把所有操作都做成一个Gulp或Grunt命令
var bower = require('bower');
bower.commands
.install(['jquery'], { save: true }, { /* custom config */ })
.on('end', function (installed) {
console.log(installed);
});
bower.commands
.search('jquery', {})
.on('end', function (results) {
console.log(results);
});
(六)npm和Bower比较
现在npm最常用于Node.Js模块,Npm是嵌套依赖树的关系,你应该知道删除npm模块,你不用rimraf node_modules模块,都不行,嵌套依赖就是,你依赖我,我依赖它,再依赖它。NPM嵌套依赖用在服务器上十分好,不用关心版本冲突问题等等。 Bower是专门为前端创建的,它对于依赖的管理是属于扁平化的。
现在一般项目里面,既有Bower和Node,因为前端还需要一些Gulp,Webpack这样的构建工具。我认为Bower和Node.js是可以共存的。
Bower的入门的更多相关文章
- bower使用入门
1.什么是bower Bower是一个客户端技术的软件包管理器,它可用于搜索.安装和卸载如JavaScript.HTML.CSS之类的网络资源.其他一些建立在Bower基础之上的开发工具,如YeoMa ...
- bower简明入门教程
什么是bower: Bower是一个客户端技术的软件包管理器,它可用于搜索.安装和卸载如JavaScript.HTML.CSS之类的网络资源.其他一些建立在Bower基础之上的开发工具,如YeoMan ...
- npm,bower安装失败
安装一些软件时,总是会出现一些莫名其妙的问题.我在安装node.js时,默认安装到C:\Program Files\nodejs之后,安装bower时,bower_components默认装到C:\W ...
- NodeJS学习历程 - (一)工具篇
后端工具 1.express:开发框架 npm install express 2.mongoose:MongoDB的处理插件 npm install mongoose 教程一:Mongoose全面理 ...
- bower安装使用入门详情
bower安装使用入门详情 bower自定义安装:安装bower需要先安装node,npm,git全局安装bower,命令:npm install -g bower进入项目目录下,新建文件1.tx ...
- [入门]bower安装和使用
bower安装和使用 字数745 阅读10127 评论2 喜欢3 bower的安装 1,首先在我的系统 安装 nodejs.因为我的系统是windows,还需要安装msysgit,注意图二中的选项 m ...
- bower入门
一.bower简介 bower是一个基于js的包管理工具,类似于java的maven. 官方网站:http://bower.io/ 二.安装bower 使用bower,首先要安装node npm和gi ...
- NetCore入门篇:(三)Net Core项目Nuget及Bower包管理
一.创建项目 1.如何创建项目,参照上一篇文章 二.程序包介绍 1.Net Core的程序包分前后端两种,后端用nuget,前端用bower. 2.与Net 不同,Net Core引用nuget包时, ...
- crossplatfrom---electron入门教程
1.atom/electron github: https://github.com/atom/electron 中文文档: https://github.com/atom/electron/tree ...
随机推荐
- Dubbo有意思的特性介绍
Duboo 不单让我们可以像使用本地服务一样的使用远程服务,还设计了很多特性来满足我们平时开发时常见的场景,省却了我们不少麻烦,真是一款有良心的框架,下面针对这些场景和解决方案来具体解释下: 1.接口 ...
- 网页 cookie
定义: 从JavaScript的角度看,cookie 就是一些字符串信息.这些信息存放在客户端的计算机中,用于客户端计算机与服务器之间传递信息. 使用:document.cookie = 'usern ...
- JS 点击复制按钮 将文字复制到手机剪贴板
我们在制作移动端网页的时候,经常会遇到这样一个问题,如何点击一个"复制"按钮,把一串文字复制到手机剪贴板,如上图所示. 看了网上的一些方法后,感觉那些方法都太复杂,有点要用插件,有 ...
- 一道C语言安全编码题目
1.前言 最近在网上看到一道C语言题目,用C语言实现一个函数,给定一个int类型的整数,函数输出逆序的整数,例如输入123,则输出字符串"321",,输入-123,则输出字符串&q ...
- Nmap脚本文件分析(AMQP协议为例)
Nmap脚本文件分析(AMQP协议为例) 一.介绍 上两篇文章 Nmap脚本引擎原理 编写自己的Nmap(NSE)脚本,分析了Nmap脚本引擎的执行过程,以及脚本文件的编写,这篇文章将以解析AMQ ...
- 题解 最优的挤奶方案(Optimal Milking)
最优的挤奶方案(Optimal Milking) 时间限制: 1 Sec 内存限制: 128 MB 题目描述 农场主 John 将他的 K(1≤K≤30)个挤奶器运到牧场,在那里有 C(1≤C≤20 ...
- MySQL,Oracle,PostgreSQL通过web方式管理维护, 提高开发及运维效率
在开发及项目运维中,对数据库的操作大家目前都是使用客户端工具进行操作,例如MySQL的客户端工具navicat,Oracle的客户端工具 PL/SQL Developer, MSSQL的客户端工具查询 ...
- java实现Excel的导入、导出
一.Excel的导入 导入可采用两种方式,一种是JXL,另一种是POI,但前者不能读取高版本的Excel(07以上),后者更具兼容性.由于对两种方式都进行了尝试,就都贴出来分享(若有错误,请给予指正) ...
- JavaScript深入浅出补充——(二)语句和严格模式,对象
三.语句和严格模式 JavaScript程序由语句组成,语句遵守语法规则. 例如:if语句,while语句,with语句等等-- block块语句 常用于组合0~多个语句,块语句用{}定义 直接以花括 ...
- 初试spring-session
一.简介 spring-session提供了用户会话信息管理的API和实现. 它将取代容器中的HttpSession.在没有容器会话集群方案的情况下,使得支持会话集群微不足道. 它支持在一个浏览器实例 ...