开源框架 MGJRouter_Swift
Posted mrxie821385843
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了开源框架 MGJRouter_Swift相关的知识,希望对你有一定的参考价值。
前言
组件化开发很重要的一点就是组件与组件之间的解耦,MGJRouter_Swift 主要作用就在于此。MGJRouter_Swift 是一个高效/灵活的 ios Swift 版 URL Router,完全实现了蘑菇街 Object-C 版 MGJRouter 的所有功能。
为什么本人要写 MGJRouter_Swift ?
在 github 看了几款不错的 Object-C 版的 Router,比如:JLRoutes、HHRouter、MGJRouter,还是觉得 Object-C 版 MGJRouter 查找 URL 更高效。
虽然 Object-C 版 MGJRouter 在 Swift 中也可以使用,但是也存在问题,比如 block 回调这块。所以说基于这个缺点,MGJRouter_Swift 就诞生了。虽然 github 上也有一款参照 Object-C 版 MGJRouter 仿写的框架,但是却去掉了 MGJRouter 的很多功能,不实用。
安装
pod ‘MGJRouter_Swift‘
使用姿势
1、最基本的使用;
2、当匹配到 URL 后,
routerParameters
会自带几个 key;
3、处理中文也没有问题;
4、Open 时,可以传一些 userinfo 过去;
5、如果有可变参数(包括 URL Query Parameter)会被自动解析;
6、定义一个全局的 URL Pattern 作为 Fallback;
7、当 Open 结束时,执行 Completion Block;
8、生成 URL;
URL 的处理一不小心,就容易散落在项目的各个角落,不容易管理。比如注册时的 pattern 是mgj://beauty/:id
,然后 open 时就是mgj://beauty/123
,这样到时候 url 有改动,处理起来就会很麻烦,不好统一管理。
所以 MGJRouter_Swift 提供了一个类方法来处理这个问题。
使用方式
这样就可以在一个地方定义所有的 URL Pattern,使用时,用这个方法生成 URL 就行了。
协议
MGJRouter_Swift 被许可在 MIT 协议下使用。查阅 LICENSE 文件来获得更多信息。
更多文章
CocoaPods开源库的搭建
CocoaPods搭建私有库
CocoaPods搭建私有库遇到问题
CocoaPods私有库的升级维护
SKStoreReviewController之程序内评价
App应用程序图标的动态更换
以上是关于开源框架 MGJRouter_Swift的主要内容,如果未能解决你的问题,请参考以下文章
text 来自Codyhouse框架的Browserlist片段源代码