热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

手把手教你实现组件化(一)

简介本篇文章主要是针对苹果端组件化的思想讲解,从零开始一步一步教你如何实现组件化,本章介绍如何创建远程索引库和本地索引库。组件化目的第一:让你轻松调用团队其他成员的组件,分离依赖性

简介

本篇文章主要是针对苹果端组件化的思想讲解,从零开始一步一步教你如何实现组件化,本章介绍如何创建远程索引库和本地索引库。

组件化目的

第一:让你轻松调用团队其他成员的组件,分离依赖性比较强的模块。
第二:降低维护成本,各人维护各人模块,互不影响。
比如你写了一个下拉菜单控件,你封装后,其他人如果想调用,一般采用的办法是把你封装的代码拿过来,导入到项目中,现在采用组件化就是封装后上传到第三方托管处(可加密可公开),用Cocopod直接在podfile中导入文件名称,更新,就可以使用该模块。

具体实现步骤 :

1 登录你的码云账号 或者Github账号

https://gitee.com/login

2 创建项目如下图:

《手把手教你实现组件化(一)》

3 复制远程索引库地址HTTPS或者SSH地址 使用SSH的方式 需要在仓库添加你的公钥,如何添加请参考以下博客:

如何添加公钥:
http://blog.csdn.net/huang351…

4 终端进入你的项目文件

1 cd 你的项目主目录绝对路径
2 pod lib create XX

注意 :
1 xx 你自己封装的组件模块名称
2 你的项目主目录是指和你项目同级的目录
示例:

《手把手教你实现组件化(一)》
5 打开终端,将远程私有库关联到本地

1 cd 你的项目绝对路径
2 pod repo add XXSpec 粘贴你刚才复制的https地址

示例:
《手把手教你实现组件化(一)》

注意 :
1 项目绝对路径 可以采用拖拽的方式直接添加到终端
2 上述命令执行完后可以进入 /用户/XX/.cocoapods/repos 可以发现多了一个LTSpec文件夹,这里就是我们用来存放组件的.podSpec文件的。

6 将自己封装的模块拷贝到创建的模板工程中

示例:
《手把手教你实现组件化(一)》

7 修改组件的.podSpec文件 可用编辑器打开
示例:
《手把手教你实现组件化(一)》

内容解释

// 设置名称
s.name = "Test"
// 设置版本号
s.version = "0.0.1"
// 设置摘要
s.summary = "A short description of HttpManager."
// 设置详情
s.description = "Good"
// 设置仓库主页
s.homepage = ""
// 设置许可证
s.license = "MIT"
// 设置作者
s.author = { "iThinkerYZ" => "690423479@qq.com" }
// 设置仓库源,表示在哪可以找到组件工程
s.source = { :git => "", :tag => "#{s.version}" }
// 设置 源文件路径 => 不是整个工程的文件,而是自己封装的代码,以后别的工程引入,就会引入这里的代码。
s.source_files = "HttpManager/Classes/**/*.{h,m}"
// s.dependency = '' 组件工程依赖哪些第三方框架
// s.frameworks = 'UIKit', 'MapKit' 组件工程依赖哪些原生框架
// s.resource_bundles = {} 组件工程图片资源

《手把手教你实现组件化(一)》

注意:这里面的 仓库源一定有填写正确,否则后续会提交不成功!

8 终端命令

1 cd 你的封装模块文件夹
2 git add .
3 git tag '0.1.0'
4 git remote add origin *SSH地址*
5 git push -u origin master
6 git push --tag

9 对文件进行本地验证和远程验证

1 pod lib lint --private
2 pod repo push LTSpec Test.podspec
3 pod search Test

注意:
1 安装两个Xcode的会遇到错误提示

《手把手教你实现组件化(一)》

解决方案:

sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

10 将验证通过的.podSpec文件加入到本地私有索引库,并上传到远程私有索引库
示例:
《手把手教你实现组件化(一)》

参考链接 :

https://baijiahao.baidu.com/s…

https://mp.weixin.qq.com/s/wE…

欢迎吐槽: 804774355@qq.com


推荐阅读
author-avatar
飞龙在天2602911735
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有