在路由中注册VC
将需要跳转的VC对应的字符串添加到一个全局字典中
通过路由打开某个VC
通过添加到全局字典中的VC对应的字符串获取VC
传参
通过KVC
回调
和传参一样,传一个block
看别人代码
https://gitee.com/liangsenliangsen/studyRouter
优点
1.只需要确定路由之后就可以跳转到指定页面,不需要做很多的if判断
2.可以做到三端统一
问题
1.只要有新增的跳转VC就要多一个注册一次
2.传参数传的是一个字典,字典中的key必须和参数名一致
3.跳转方式也放在了传参的字典里
4.硬编码的问题
我们的做法
以跳转到登录组件为例
在路由器工具类中获取到HYLoginVC类,该类遵守了某个协议并实现了某个方法,HYLoginVC类调用该方法并将带上需要传递的参数,在HYLoginVC类中再做具体跳转到哪个页面(如:一键登录页面或手机号登录页面)的逻辑处理。
将跳转逻辑放在了组件内部。(跳转逻辑统一放在路由类的扩展里处理是否更好?)
网友评论