我的项目是用 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 没用对。。。
|  |      1liaa      2017-02-03 07:26:20 +08:00 via iPhone npm 在安装包的时候是可以把版本锁死的,这样下次安装也是同样的版本。需要设置下 npm 就可以了。 | 
|  |      2akinoniku      2017-02-03 08:36:44 +08:00 推荐 yarn ,锁得更死 | 
|  |      3jmc891205      2017-02-03 08:39:15 +08:00 不要用 bower 就好了 只用 npm npm 在遇到版本冲突的时候会把两个版本都下载下来 bower 就不会 | 
|  |      4zsx      2017-02-03 09:01:43 +08:00 只用 npm / yarn ,不用 bower | 
|  |      5mritd      2017-02-03 09:20:26 +08:00 via iPhone 对 npm 表示绝对蒙蔽,不懂前端 | 
|  |      6clearbug      2017-02-03 11:25:13 +08:00 via Android 感觉有些插件在官方仓库都没有,索性直接手动下载了 |