日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

组件化开发 ——— 制作私有库

發(fā)布時(shí)間:2025/3/18 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 组件化开发 ——— 制作私有库 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

組件化開(kāi)發(fā) ——— 制作私有庫(kù)

上篇文章大致說(shuō)了組件化優(yōu)缺點(diǎn)及內(nèi)容,現(xiàn)在就針對(duì)公共基礎(chǔ)組件制作私有庫(kù)的問(wèn)題繼續(xù)搞起來(lái)。

我們的原則是:將一個(gè)項(xiàng)目組件化拆分掉,一般會(huì)拆分一些基礎(chǔ)組件、一些功能組件和業(yè)務(wù)組件。將拆分好的組件放到遠(yuǎn)程倉(cāng)庫(kù),統(tǒng)一通過(guò)Cocoapods進(jìn)行管理。

我們先來(lái)了解一些概念:

如上圖所示: 遠(yuǎn)程索引庫(kù)、本地索引庫(kù)、遠(yuǎn)程代碼庫(kù)、本地代碼庫(kù)。項(xiàng)目先通過(guò)拆分demo 中的category的基礎(chǔ)組件來(lái)說(shuō)這四個(gè)概念。

一、遠(yuǎn)程索引庫(kù)

什么是遠(yuǎn)程索引庫(kù)? 每創(chuàng)建一個(gè)組件都會(huì)帶有一個(gè) xxx.podspec 的索引文件。專門用來(lái)存放這些索引文件的庫(kù)就叫做索引庫(kù)。我們需要將這些索引文件上傳到遠(yuǎn)程索引庫(kù)才能保證其他的同事能夠拿來(lái)用 復(fù)制代碼

創(chuàng)建遠(yuǎn)程索引庫(kù)( 注:在自己公司的項(xiàng)目創(chuàng)建private的私有索引庫(kù), 要是有組件想開(kāi)源,在github上創(chuàng)建public的索引庫(kù)即可,私有索引的步驟和pubic的操作方式一樣)

遠(yuǎn)程索引庫(kù)已經(jīng)創(chuàng)建成功,可以看到遠(yuǎn)程索引庫(kù)的地址,

二. 本地索引庫(kù) (本地索引庫(kù)就是用來(lái)存放本地索引文件的庫(kù))

1.打開(kāi)終端 pod repo 查看一下當(dāng)前有哪些本地索引庫(kù)(如果你之前沒(méi)有創(chuàng)建過(guò),應(yīng)該只有一個(gè)master)

2.通過(guò)pod repo add <本地索引庫(kù)的名字> <遠(yuǎn)程索引庫(kù)的地址> ,創(chuàng)建本地索引庫(kù)并和遠(yuǎn)程索引庫(kù)做關(guān)聯(lián)(注:本地索引庫(kù)的名字建議和遠(yuǎn)程索引庫(kù)起的名字一樣)

3.通過(guò)前往文件夾 "/用戶/climbwang/.cocoapods "可以查看本地索引庫(kù)的物理地址:

三、遠(yuǎn)程代碼庫(kù) (代碼實(shí)際存放的遠(yuǎn)程倉(cāng)庫(kù))

創(chuàng)建遠(yuǎn)程代碼倉(cāng)庫(kù)(和創(chuàng)建遠(yuǎn)程索引庫(kù)的方式一樣),創(chuàng)建一個(gè)WMCategoryKit的遠(yuǎn)程代碼庫(kù),用來(lái)存放WMCategory組件的代碼。同樣獲取到WMCategoryKit組件的遠(yuǎn)程代碼庫(kù)地址。

四、本地代碼庫(kù)

創(chuàng)建WMCategoryKit組件本地代碼庫(kù)

1.cd到你想存代碼的路徑, pod lib create <組件名> , 來(lái)創(chuàng)建本地代碼組件模版庫(kù),根據(jù)需要做選擇:

2.在組件WMCategoryKit的classes路徑下放入你想做為組件的代碼

3.接著cd到Example下進(jìn)行pod install (把剛才拖入到classes里的文件夾pod進(jìn)來(lái))

4.pod成功后,編譯組件看是否報(bào)錯(cuò),編譯通過(guò)后需要修改podspecs索引文件,一般需要修改下面幾個(gè)問(wèn)題:

這塊要注意的就是,組件庫(kù)有沒(méi)有子文件夾的問(wèn)題:```沒(méi)有子文件夾的話,所有類都是只在WMCategoryKit下面,在source_files路徑填就可以。有子文件夾的話,需要注釋source_files,然后如圖,在s.subspec里 填寫(xiě)子目錄層級(jí)內(nèi)容。``` 復(fù)制代碼

5.編譯運(yùn)行通過(guò)后,提交組件到遠(yuǎn)程代碼庫(kù)并打tag:

```- git add .- git commit -m “xxx"- git remote add origin 遠(yuǎn)程代碼倉(cāng)庫(kù)地址- git push origin master- git tag 版本號(hào) (注:這里的版本號(hào)必須和podspec里寫(xiě)的版本號(hào)一致)- git push --tags``` 復(fù)制代碼

6.通過(guò)pod spec lint (或pod spec lint --verbose --allow-warnings) 命令驗(yàn)證podspec索引文件

7.驗(yàn)證通過(guò)后,pod repo push <本地索引庫(kù)> <索引文件名>

```pod repo push WMSpecs WMCategoryKit.podspec```去本地查看:![WechatIMG54](http://cdn.myweimai.com/images/2c7968f9f38e1b964ade05d18838bdb5_1332x376.jpeg) 復(fù)制代碼

8.然后在需要用到的項(xiàng)目里,修改podfile,把WMCategoryKit組件pod進(jìn)來(lái)(:需要在Podfile中指定組件遠(yuǎn)程索引庫(kù)地址,如果不指定默認(rèn)會(huì)從master的索引庫(kù)查找就會(huì)報(bào)找不到組件)

然后 pod install 成功后查看項(xiàng)目:

到這里,組件制作私有庫(kù)并上傳到gitlab,完成所有項(xiàng)目都可以pod此組件的功能。

總結(jié)

以上是生活随笔為你收集整理的组件化开发 ——— 制作私有库的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。