我的项目是用 bower 管理外部组件的,新建的项目 bower install 一下后,一般再也不会去更新已经安装好的组件了。 但是最近把 bower 组件全部删了,重新 bower install 了一下,网站便不能用了。 angular animate 的组件出了问题。
Uncaught Error: [$injector:unpr] Unknown provider: $$forceReflowProvider <- $$forceReflow <- $$animateQueue <- $animate <- $compile <- $$animateQueue
这种部分组件版本冲突的问题已经遇到不止一次了,每次都难以解决。
引用的各种外部组件太多,每个组件可能 depend on 不同的 angular 版本,一不小心就出问题。当时不出问题,过一段时间,各种组件版本更新了,就可能出问题了。就算各组件的版本在 bower/npm 都明确好,还是可能有问题。
总觉得这种组件管理方式不稳妥,还是把组件都下载下来,不要用 bower/npm 管理好。
大家觉得呢?是不是我 bower/npm 没用对。。。
1
liaa 2017-02-03 07:26:20 +08:00 via iPhone
npm 在安装包的时候是可以把版本锁死的,这样下次安装也是同样的版本。需要设置下 npm 就可以了。
|
2
akinoniku 2017-02-03 08:36:44 +08:00
推荐 yarn ,锁得更死
|
3
jmc891205 2017-02-03 08:39:15 +08:00
不要用 bower 就好了 只用 npm
npm 在遇到版本冲突的时候会把两个版本都下载下来 bower 就不会 |
4
zsx 2017-02-03 09:01:43 +08:00
只用 npm / yarn ,不用 bower
|
5
mritd 2017-02-03 09:20:26 +08:00 via iPhone
对 npm 表示绝对蒙蔽,不懂前端
|
6
clearbug 2017-02-03 11:25:13 +08:00 via Android
感觉有些插件在官方仓库都没有,索性直接手动下载了
|