Bower包管理支持packages多版本共存
Bower是一个JavaScript包管理工具,用起来简单方便。之前用着一直都挺顺手,不过,最近发现一个坑爹的问题。当项目需要同一个package(包)的不同版本的时候,Bower似乎就撂挑子,非得从中选择一个。比如,我想要在一个项目里,让jQuery1.7.2和jQuery2.1.4共存。先bower install jquery#1.7.2,然后再bower install jquery#2.1.4,就成了下面的样子。
1 |
Unable to find a suitable version for jquery, please choose one: |
Oh,No。这可不是我所期待的。相信Bower这么牛叉的工具,肯定考虑了这种情况,于是,上网卖力地查找了一番,的确是有解决办法的。请看:
1 2 |
bower install jquery-1.7.2=jquery#1.7.2 --save bower install jquery-2.1.4=jquery#2.1.4 --save |
安装完成后,查看下 bower.json,就会发现依赖项有所变化,
同时,bower_components目录下,就会有jquery-1.7.2和jquyer-2.1.4两个目录了。
1 2 3 4 |
"dependencies": { "jquery-1.7.2": "jquery#1.7.2", "jquery-2.1.4": "jquery#2.1.4" } |
顺带着,又查看了下Bower官方的文档。
Bower的几种常用的安装方式:
1.基于bower.json安装
1 |
bower install [<options>] |
2.安装指定的package包,如
1 |
bower install jquery bootstrap |
3.安装指定package的特定版本,如
1 |
bower install jquery#1.7.2 |
4.安装指定package的多个版本,如
1 2 |
bower install jquery-1.7.2=jquery#1.7.2 bower install jquery-2.1.4=jquery#2.1.4 |
另外,几个常用的option选项有:
1 2 3 4 |
-F, --force-latest # 安装时若有冲突则强制安装最新版; -p, --production # 不要安装开发依赖的package(一般用于生产环境); -S, --save # 安装完成后将此package记录在bower.json文件的dependencies项中; -D, --save-dev # 安装完成后将此package记录在bower.json文件的devDependencies项中(一般用于开发环境); |