问题 1:
现在有三个项目,A、B、C,都用了一个公用组件。
公用组件 引用了 另一个组件里的 文件。 但是 A、B 有这个组件,但是C 没有。
一般问题都出现在这种公用组件里。 组件必须拆的细一些,如果有两个组件依赖的话,就会出现上面的问题。
组件的划分参考:https://www.jianshu.com/p/88b4168e1ce4
划分根据自己项目总结: 比如有一个 CommonClass 基础通用组件,里面有一些常用的对网络请求,缓存图片,数据库等第三方库的一些二次封装,以及常用的类别等…但是每个项目改动都不大。 使用第三方库应该尽量进行二次封装,封装更适用于业务的组件,或者封装成一个接口类,避免在换第三方库的时候整个工程逐句代码修改。(至于细节及参考列子参考上面链接)。 接下来说说我们现在的通用基础组件里都有什么: 1.通用的缓存单例类 (xxxCache),存储一些常用的需要缓存的信息。
- 通用常用的一些类别(CategoryClass)。
3.一些常用的 父类(RootController)。
4.通用常用的对 系统控件的 二次封装类 ,比如 一些空数据页面,一些错误自定义提示框。封装的加载loading…. 等等
5.网络请求的二次封装 (xxxRequest).
6.一些常用的单例类….
…… 具体看使用,多学习多思考多交流。
这里可能出现的问题就是 组件不能拆得太细也不能太冗余。目前来看 冗余的话,会导致过度依赖。
基础业务组件
这里说的是 像app常用的一些东西 比如 用户行为统计,异常上报,推送,支付,… 目前来看我们的项目这种都集成在了主项目,到时候可以和队员交流交流为什么不做个基础业务组件把这些弄到组件里。 自己思考下这样做会不会有问题?
UI公共组件
UI 也有公共部分,开发前可以先和设计师沟通下,看有没有整个项目通用的一些公用组件可以来划分一下。记住公共原则来抽离就行。 目前我看我们的项目UI组件都比较分散,可能没有抽空去集成,有的大多数也都放在公用组件里。
独立业务组件
根据业务的独立性来划分,比如登录注册,购物车,用户中心…. 我看我们的项目,每一个开发的功能,有通用的,都做成了单独的一个组件库。
看组件的划分,也是项目出了问题,才来细看的,所以说出现问题并不是坏事,但是最好是自己在出现问题之前就模拟这些失败的情况,及早的打预防针避免掉 才是最好的。 而且实际动手去做 去应用,模拟,多做项目才能真正有所体会。