在node的modules和bower的【本文受版权保护】未经授权,禁止复制转载。components中,我们会先通过pa原创内容,盗版必究。本文作者:唐霜,转载请注明出处。ckage.json或bower.jso【未经授权禁止转载】【访问 www.tangshuang.net 获取更多精彩内容】n来配置一个dependences字段选项,当我们执行【原创不易,请尊重版权】npm install或【访问 www.tangshuang.net 获取更多精彩内容】bower install时,这个字段中所依赖的包会被下载下来放到著作权归作者所有,禁止商业用途转载。【版权所有】唐霜 www.tangshuang.net对应的目录中。那么这个字段中配置的包版本【本文首发于唐霜的博客】未经授权,禁止复制转载。具体是怎样配置呢?
确定的版本号【本文受版权保护】
【转载请注明来源】转载请注明出处:www.tangshuang.net【关注微信公众号:wwwtangshuangnet】转载请注明出处:www.tangshuang.net当我们需要一个确定的版本号的时候,直接传转载请注明出处:www.tangshuang.net【版权所有】唐霜 www.tangshuang.net入这个版本号的具体值,例如:
【本文受版权保护】本文作者:唐霜,转载请注明出处。【本文首发于唐霜的博客】"dependencies": {
"jquery" : "1.12.4"
},
这个时候,jquery的值是具体的,确定【本文受版权保护】原创内容,盗版必究。的,执行npm install的时候,这【关注微信公众号:wwwtangshuangnet】转载请注明出处:www.tangshuang.net个版本的jquery会被下载到node_原创内容,盗版必究。转载请注明出处:www.tangshuang.netmodules目录中。
【关注微信公众号:wwwtangshuangnet】【版权所有,侵权必究】转载请注明出处:www.tangshuang.net【本文首发于唐霜的博客】本文版权归作者所有,未经授权不得转载。注:为什么需要一个版本号呢?直接下载最新本文版权归作者所有,未经授权不得转载。【关注微信公众号:wwwtangshuangnet】版的不就可以了吗?实际上在我们下载的所有【本文受版权保护】【原创不易,请尊重版权】包中,不同的包所依赖的包不一样,比如你写【转载请注明来源】转载请注明出处:www.tangshuang.net的一个组件依赖1.x版本的jquery,本文作者:唐霜,转载请注明出处。【本文首发于唐霜的博客】而另外一个人写的组件依赖2.x版本的jQ【作者:唐霜】【本文首发于唐霜的博客】uery,这就需要在自己的包中明确自己的【版权所有】唐霜 www.tangshuang.net【本文首发于唐霜的博客】jQuery版本号,在执行npm ins【原创内容,转载请注明出处】【作者:唐霜】tall时,显示提示信息,让执行者选择最本文版权归作者所有,未经授权不得转载。【本文受版权保护】终要安装哪个版本。
原创内容,盗版必究。未经授权,禁止复制转载。【原创内容,转载请注明出处】选择一定范围的版本号本文版权归作者所有,未经授权不得转载。
【本文首发于唐霜的博客】未经授权,禁止复制转载。【未经授权禁止转载】【关注微信公众号:wwwtangshuangnet】【版权所有】唐霜 www.tangshuang.net就像上面注释中指出的,如果存在两个组件依本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。赖版本不同的时候,就需要作出一个妥协,让转载请注明出处:www.tangshuang.net【版权所有】唐霜 www.tangshuang.net双方可以兼容。其中的一种方法就是提供一个【原创不易,请尊重版权】【原创不易,请尊重版权】可选择的范围的版本号,比如,你在你的配置【访问 www.tangshuang.net 获取更多精彩内容】未经授权,禁止复制转载。文件中这样写:
【访问 www.tangshuang.net 获取更多精彩内容】【版权所有】唐霜 www.tangshuang.net【本文受版权保护】"dependencies": {
"jquery" : ">=1.12.4"
},
我们使用了【未经授权禁止转载】>=号,也就是说,大于等于1.12.4的所有原创内容,盗版必究。【本文首发于唐霜的博客】版本都可以支持你写的组件。选择范围可以使【本文受版权保护】未经授权,禁止复制转载。用:
转载请注明出处:www.tangshuang.net【作者:唐霜】本文作者:唐霜,转载请注明出处。本文作者:唐霜,转载请注明出处。【原创内容,转载请注明出处】>>=<<=转载请注明出处:www.tangshuang.net
【关注微信公众号:wwwtangshuangnet】【关注微信公众号:wwwtangshuangnet】【关注微信公众号:wwwtangshuangnet】本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshuang.net
没有【未经授权禁止转载】=哦,如果要=,直接填写具体的版本号就可以【未经授权禁止转载】【本文首发于唐霜的博客】了。
兼容同一个大版本的不同小版本本文版权归作者所有,未经授权不得转载。
【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.net著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。如果你打算让你的组件运行在IE8等浏览器转载请注明出处:www.tangshuang.net【未经授权禁止转载】,就不能使用2.x版本的jQuery,所【本文受版权保护】【作者:唐霜】以你要作出规定。
原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。原创内容,盗版必究。"dependencies": {
"jquery" : "^1.12.4"},
它的意思是兼容所有1.x版本的jQuer【作者:唐霜】著作权归作者所有,禁止商业用途转载。y(但必须是>=1.12.4版本)【版权所有,侵权必究】【版权所有,侵权必究】。
【转载请注明来源】【作者:唐霜】未经授权,禁止复制转载。转载请注明出处:www.tangshuang.net【版权所有,侵权必究】在进行下文的阐述之前,我们先做一个约定,本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。我们把一个版本号进行分解:
【转载请注明来源】著作权归作者所有,禁止商业用途转载。【版权所有,侵权必究】【版权所有,侵权必究】【访问 www.tangshuang.net 获取更多精彩内容】本文作者:唐霜,转载请注明出处。[major version].[rel【版权所有】唐霜 www.tangshuang.net【关注微信公众号:wwwtangshuangnet】ease version].[devel【本文首发于唐霜的博客】原创内容,盗版必究。op version]
【版权所有】唐霜 www.tangshuang.net【转载请注明来源】【关注微信公众号:wwwtangshuangnet】
上面是我们约定的把一个版本号的三部分分开未经授权,禁止复制转载。【本文首发于唐霜的博客】称呼的方式。下文中我们会用major, 本文作者:唐霜,转载请注明出处。【访问 www.tangshuang.net 获取更多精彩内容】release, develop简称这三【版权所有,侵权必究】【访问 www.tangshuang.net 获取更多精彩内容】个位置上的数字代表的版本号。
【关注微信公众号:wwwtangshuangnet】【作者:唐霜】未经授权,禁止复制转载。原创内容,盗版必究。未经授权,禁止复制转载。这些兼容性质的版本号表示方式包括:未经授权,禁止复制转载。
著作权归作者所有,禁止商业用途转载。【转载请注明来源】未经授权,禁止复制转载。【未经授权禁止转载】【原创不易,请尊重版权】【本文受版权保护】转载请注明出处:www.tangshuang.net【转载请注明来源】“~1.2.0” :使用~的意思是“约等于”这个版本,说【版权所有,侵权必究】【本文首发于唐霜的博客】的具体点,就是“>=1.2.0 &【未经授权禁止转载】【作者:唐霜】amp;& <1.3.0”【版权所有,侵权必究】著作权归作者所有,禁止商业用途转载。版本。~会在develop versio【本文首发于唐霜的博客】【版权所有,侵权必究】n这个版本号上向上兼容,所以使用~,相当转载请注明出处:www.tangshuang.net【作者:唐霜】于向上兼容同一个release vers【关注微信公众号:wwwtangshuangnet】【作者:唐霜】ion.
【本文首发于唐霜的博客】【本文首发于唐霜的博客】【版权所有,侵权必究】
【本文受版权保护】本文版权归作者所有,未经授权不得转载。 “^1.12.0”原创内容,盗版必究。本文作者:唐霜,转载请注明出处。; :和~有点像,但是使用^的意思是“兼容【原创不易,请尊重版权】本文作者:唐霜,转载请注明出处。”这个版本的意思,就是”&g著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】t;=1.12.0 &&【版权所有,侵权必究】【版权所有】唐霜 www.tangshuang.net <2.0.0″版本。【未经授权禁止转载】【原创内容,转载请注明出处】^会在release version版本原创内容,盗版必究。本文版权归作者所有,未经授权不得转载。号上向上兼容,也就是说向上兼容同一个ma【本文受版权保护】著作权归作者所有,禁止商业用途转载。jor version.
著作权归作者所有,禁止商业用途转载。【原创不易,请尊重版权】 “1.1.x”【作者:唐霜】 :它的作用有点像~,但是它并不要求向上【转载请注明来源】著作权归作者所有,禁止商业用途转载。兼容,意思是”>=1.【版权所有,侵权必究】未经授权,禁止复制转载。1.0 && <1未经授权,禁止复制转载。【原创内容,转载请注明出处】.2.0″,吃通整个rele【版权所有,侵权必究】【本文受版权保护】ase version。
著作权归作者所有,禁止商业用途转载。【版权所有】唐霜 www.tangshuang.net “1.x”【访问 www.tangshuang.net 获取更多精彩内容】:同样的道理,它的作用类似^,但是吃通整【版权所有】唐霜 www.tangshuang.net【关注微信公众号:wwwtangshuangnet】个major version,也就是【本文首发于唐霜的博客】【访问 www.tangshuang.net 获取更多精彩内容】8221;>=1.0.0 &【版权所有,侵权必究】【作者:唐霜】;& < 2.0.0著作权归作者所有,禁止商业用途转载。【原创内容,转载请注明出处】243;.
上面的解释基本说清了~, ^, x的作用本文版权归作者所有,未经授权不得转载。【原创内容,转载请注明出处】,但是有一个细节需要注意,就是当一个包出转载请注明出处:www.tangshuang.net本文版权归作者所有,未经授权不得转载。于开发状态,还没有major versi【版权所有,侵权必究】未经授权,禁止复制转载。on的时候,^的作用向下降一级,相当于和【访问 www.tangshuang.net 获取更多精彩内容】【作者:唐霜】~作用一样,比如:
【本文受版权保护】【访问 www.tangshuang.net 获取更多精彩内容】【原创内容,转载请注明出处】原创内容,盗版必究。【本文受版权保护】【本文受版权保护】本文版权归作者所有,未经授权不得转载。【原创不易,请尊重版权】【访问 www.tangshuang.net 获取更多精彩内容】^0.2.3 相当于 ~0.2.3 也就【版权所有,侵权必究】【访问 www.tangshuang.net 获取更多精彩内容】是 >=0.2.3 &&a【关注微信公众号:wwwtangshuangnet】【原创内容,转载请注明出处】mp; < 0.3.0
【版权所有】唐霜 www.tangshuang.net【访问 www.tangshuang.net 获取更多精彩内容】【转载请注明来源】
任何版本都可以【关注微信公众号:wwwtangshuangnet】
【关注微信公众号:wwwtangshuangnet】【原创内容,转载请注明出处】转载请注明出处:www.tangshuang.net下面的这个方法是不对任何版本有要求:原创内容,盗版必究。
未经授权,禁止复制转载。【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.net原创内容,盗版必究。"dependencies": {
"jquery" : "*"},
为什么可以允许任何版本呢?有两个原因:1未经授权,禁止复制转载。【未经授权禁止转载】.你的组件对版本没有任何要求;2.其他组【原创内容,转载请注明出处】【原创不易,请尊重版权】件有版本要求,你希望最大程度的兼容它。
【关注微信公众号:wwwtangshuangnet】著作权归作者所有,禁止商业用途转载。【原创内容,转载请注明出处】最新版本转载请注明出处:www.tangshuang.net
【作者:唐霜】著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.net你希望你所依赖的这个包永远处于最新的版本原创内容,盗版必究。转载请注明出处:www.tangshuang.net,可以使用:
【版权所有,侵权必究】原创内容,盗版必究。【原创内容,转载请注明出处】【原创不易,请尊重版权】【版权所有】唐霜 www.tangshuang.net"dependencies": {
"jquery" : "lastest"
},
这种情况下,执行npm install的【原创内容,转载请注明出处】【原创不易,请尊重版权】时候,会下载最新版本的jquery,但是未经授权,禁止复制转载。【本文受版权保护】很有可能与其他组件的依赖产生冲突。
【版权所有,侵权必究】原创内容,盗版必究。本文作者:唐霜,转载请注明出处。【版权所有,侵权必究】【作者:唐霜】通过URL确定版本【转载请注明来源】
【版权所有,侵权必究】【访问 www.tangshuang.net 获取更多精彩内容】转载请注明出处:www.tangshuang.net本文作者:唐霜,转载请注明出处。原创内容,盗版必究。如果你不知道这个包属于什么版本,或者你希本文版权归作者所有,未经授权不得转载。【作者:唐霜】望下载这个包的时候,通过给定的URL去下本文作者:唐霜,转载请注明出处。【版权所有】唐霜 www.tangshuang.net载对应的版本,可以如下:
著作权归作者所有,禁止商业用途转载。未经授权,禁止复制转载。【转载请注明来源】【访问 www.tangshuang.net 获取更多精彩内容】"dependencies": {
"jquery" : "https://yourdomain.com/jquery.git"
},
这种使用方法很少出现,一般在npm中都不【转载请注明来源】本文版权归作者所有,未经授权不得转载。会使用,在bower中才偶尔用到。
【本文首发于唐霜的博客】【未经授权禁止转载】【版权所有,侵权必究】【转载请注明来源】【原创内容,转载请注明出处】2016-07-19 4705


