组件化

组件化_第1张图片



为什么组件化?


1.组件化可以降低模块间和代码的藕合度。比如首页模块和登录模块的代码分离,可以分别管理、测试代码。

2.组件之间用路由器通信、降低模块间的藕合度。

3.不同项目间可以直接引用模块。

4.组件分为,基本组件,功能组件,业务组件。

基本组件(分类、工具类)

业务组件(比如,首页,设置,登录)

功能组件(比如,分享,定位)假如功能组件中会使用到基础组件中的某个类,可以重新新建一个类,把这个类放到功能组件中。两个业务组件假如有联系(请用中间层)。


copy本地私库,并创建测试工程。

pod lib create 库名

组件化_第2张图片

修改spec文件

把podspec文件复制到


组件化_第3张图片

pod search 库名,成功。

1.到远程库创建库

2.cd到测试工程目录

3.git add .

4.git commit -m '初始化'

5.git remote add origin [email protected]:qiuzhongwei0519/ZW_ServiceLib.git

6.git push -u origin master -f

7.git tag '0.1.0'

8.git push --tags

9.pod spec lint  


组件化_第4张图片

验证失败,

1.修改spec 依赖库,这种比较复杂

2.强制更新,把spec文件放到本地-在码云repo文件夹中创建库相同名称的文件夹,再创建tag相同的文件夹,放入spec文件


组件化_第5张图片


搜索本地私有库

pod search 库名,如出现下图


组件化_第6张图片

找到文件如下


组件化_第7张图片

删除search_index.json,重新pod search 库名


组件化_第8张图片

本地私有库成功创建成功

经本地测试后,使用pod install安装 ,podfile直接引用search里的 pod 'ZW_BaseLib' , '~> 0.1.0'

出现如下问题时

vk 

在远程创建specs项目,专门存放spec文件,为了pod file - source 同步到本地repo 索引中。

你可能感兴趣的:(组件化)