自动化构建之bower
官网地址:https://bower.io/
网站由很多东西组成 - 框架,库,一个大型网站有很多人一块创建,那么因为版本或者其他的原因导致文件重复,或者不是最新的。例如:jq的版本不一样但是都是jq。bower就是用来管理这些文件的,解决重复的组件、库,让所有的文件都是最新版本的。
下面详细介绍bower的安装到使用
1、安装bower
在终端执行
npm install -g bower
便可完成安装,安装完成之后执行
bower -v
2、创建一个测试目录
mkdir bower-in-action
bower-in-action是问价名。
进入这个文件:
cd bower-in-action/ 进入这个目录
mkdir query-bootstrap-in-action 创建一个项目目录(以jq bootstrap为例)
cd jquery-bootstrap-in-action/ 进入这个目录当前目录是空的
通常使用jq bootstrap去官网下载,然后放到项目里面。现在bower做这些事情。
bower install jquery 执行变回自动查找jq并下载
bower install bootstrap执行下载bootstrap
bower install 加组件名便可以下载。
当然bower install 后可以使 github 上组件的名字或者gitub上右侧的github地址或者是网页的url。这几种都行。
执行 ls -al 便可以看见新建的文件夹下边多了一个文件夹bower_components
cd bower_components/进入这个文件夹
执行 ls -al 便可一看见该目录下多了两个文件夹 jq 和 bootstrap
rm - rf jquery 便可以删除jq文件夹,在这个文件的根目录下
3、bower的配置文件
(a)、bower有两个配置文件分别为:bower.json 和 .bowerrc
bower.json:这个文件的意思是,多人开发的项目,为了避免组件的重复并且保证都是最新,代码呗提交之后只需要执行,
bower install
bower会自己根据这个文件的配置去检查。
bower.json文件的生成方法:
cd.. 回到文件夹的根目录,在根目录下执行 bower init 他会给出提示
1、默认文件名 回车就行
2、默认版本还 回车就行
3、描述: test bower by using jq & bootstrap
4、main file 项目的入口文件 暂时为空 回车
5、几种文件租房时 为空就行
6、关键词
7、作者
8、yes
9、y
10、y
执行ls -al变可以看见目录下多了一个 bower.json文件
vim bower.json查看这个文件\
执行:wq返回文件根目录
.json的配置文件变完成了。
(b)、.bowerrc文件
这个文件一般情况下是不会使用的,有的公司为了安全性考虑,在上网的时候要使用代理才能上网,这样bower要下载文件,得需要代理
vim .bowerrc 回车 进入文件
点击 esc 最底下变为 insert 编辑文件
proxy代表什么呢:腾讯的代理 http://proxy.tencent.com:8080
如果是https的 https-proxy : http://proxy.tencent.com:8080
如果网路非常的差或者非常好
timeout : 6000也就是1分钟 这里是一个数值 默认单位是毫秒
{
"directory": "bower_components",
"proxy": "http://proxy.tencent.com:8080",
"https-proxy": "https://proxy.tencent.com:8080",
"timeout":6000
}
:w 然后执行 :q便可以保存回到文件根目录。
不编写的直接 :wq便回到文件根目录。
到这里bower的配置就全部完成了。
在项目中要用到组件还是以前的方法 src 或者 href 便可以了,但是这样旺旺会很麻烦,文件目录层级多了就会很复杂,所以就要配合grunt的使用了。
总结:
一般来说在根目录下先创建配置文件,配置文件好了之后,再去下载所需要的第三方文件,这个时候执行的命令为
bower install --save jquery
执行 --save 才能将下载的文件,直接配置到配置文件中不需要去手动再去配置。
自动化构建之bower的更多相关文章
- 近期总结:generator-web,前端自动化构建的解决方案
本文结合最近的工作经验,总结出一个较简洁的前端自动化构建方案,主张css和js的模块化,并通过grunt的自动化构建,有效地解决css合并,js合并和图片优化等问题,对于提高前端性能和项目代码质量有一 ...
- 基于gulp 的前端自动化构建方案总结
一,基础篇 先安装nodejs 使用淘宝镜像安装tnpm 安装 cnpm 插件:npm install -g cnpm --registry=https://registry.npm.taobao.o ...
- 前端自动化构建工具-yoman浅谈
如今随着前端技术的飞速发展,前端项目也变得越来越复杂. 快速的搭建一个集成多种工具和框架的复杂前端项目也越来越成为一种需求. 当然如果你要自己从0开始完全自己diy,绝对可以,只不过需要耗费一些不少的 ...
- 【Node.js学习笔记】使用Gulp项目自动化构建工具
刚接触node.js,对前端的一些东西还不是很清楚,据说Gulp这东西很强大,先来看看从网上抄的一段关于自动化构建的描述: 在为数众多的中小型软件作坊中,不存在自动化构建和发布工具.构建.交付准备环境 ...
- 我是如何进行Spring MVC文档翻译项目的环境搭建、项目管理及自动化构建工作的
感兴趣的同学可以关注这个翻译项目 . 我的博客原文 和 我的Github 前段时间翻译的Spring MVC官方文档完成了第一稿,相关的文章和仓库可以点击以下链接.这篇文章,主要是总结一下这个翻译项目 ...
- 使用Jenkins配置自动化构建
持续集成是个简单重复劳动,人来操作费时费力,使用自动化构建工具完成是最好不过的了. 为了实现这个要求,我选择了Jenkins. 从http://mirrors.jenkins-ci.org/windo ...
- gulp自动化构建工具
gulp 自动化构建工具,实时监控.代码合并.压缩... http://www.gulpjs.com.cn/ 中文网 http://gulpjs.com/plugins/ 英文网 ...
- 前端自动化构建工具gulp的使用总结
前端自动化构建工具gulp的使用总结 博主最近偶的空闲,在此对gulp的使用做一个总结,让小伙伴知道如何合理的使用gulp以及gulp的使用技巧. 谈到gulp,有人可能就会想到另外一个构建工具gru ...
- gulp自动化构建
最近正在使用gulp去帮我自动化构建一些技术块,感觉很爽,所以把gulp操作步骤给写笔记,记录下来... 首先了解什么是gulp? 我的理解是一个工具并且自动化的,能帮你把一些前端技术的语法转换成当前 ...
随机推荐
- CSS max-width: 0;
写CSS,大家都知道max-width是要在宽度超过后才会生效,但今天我发现一个神奇的现象, 为表格td加上max-width: 0;可以让上下两个表格自动对齐,这句的作用到底是什么还有待研究,今天先 ...
- Solr数据不同步
Solr配置了集群,本地有253和254,2个独立的Solr服务. 同一个页面的图片,刷新2次,图片地址不一样,最后查明,后台数据源Solr1和Solr2的数据不一致. 第1步推测:本地缓存, ...
- dubbo-刷一遍用户指南(三)
想更好的使用dubbo,最好刷几遍用户指南,dubbo用户指南几乎包含了所有dubbo所有的特性 用户指南地址:https://dubbo.gitbooks.io/dubbo-user-book/de ...
- orcale 多表连接
多表连接:
- Locally managed (LMT) vs. Dictionary managed (DMT) tablespace
The LMT is implemented by adding the extent management local clause to the tablespace definition syn ...
- 【bzoj1001】【狼抓兔子】
1001: [BeiJing2006]狼抓兔子 Time Limit: 15 Sec Memory Limit: 162 MB Submit: 12719 Solved: 3017 [Submit][ ...
- Think In java 笔记一
本博客不再更新,很多其它精彩内容请訪问我的独立博客 今天起要读这本书了,曾经都没有认真读过书.是时候改变自己了. 如今认为不是写不出代码,而是没有想法,没有架构,要做一个大神不是写多少代码.而是要能做 ...
- 数学之路-python计算实战(4)-Lempel-Ziv压缩(2)
Format characters have the following meaning; the conversion between C and Python values should be o ...
- 【cl】selenium实例2:打开百度,输入hello world
/*创建的类为junit class*/ package Selenium_lassen; import static org.junit.Assert.*; import java.io.File; ...
- 《从零開始学Swift》学习笔记(Day 56)—— Swift编码规范之命名规范
原创文章,欢迎转载.转载请注明:关东升的博客 程序代码中到处都是自定义的名字,取一个有样而且符合规范的名字非常重要. 命名方法非常多,可是比較有名的,广泛接受命名法有: 匈牙利命名,一般仅仅是命名变量 ...