采用Reactor单向流框架,用户行为(User Action)和视图状态(View State)通过可观察的流递送到各自的层,这些流是单向的:View只能提交Action到Reactor、View的状态只能由Reactor驱动。
采用的三方库ReactorKit
主题管理基于Rx方式。内置了backgroundColor、foregroundColor、titleColor、bodyColor和borderColor等常用的颜色属性,不够的、可以通过specialColors数组来进行扩展。
采用的三方库RxTheme
方式一:swhub://about
路由管理基于URL方式。应用会注册一个自己的URL Scheme,比如swhub;同时也支持由https进行驱动,如果注册了about的host,则会打开原生关于页面,反之打开网页。
同时对路由进行了Reactive的扩展,支持Rx方式调用,可以方便的处理结果。
采用的三方库URLNavigator
基于Moya框架进行搭建,支持Rx方式请求和响应数据的model化,相应代码封装在NetworkingType协议中。便捷请求方法如下:
requestRaw
requestJSON
requestObject
requestArray
requestBase
requestData
requestModel
requestModels
requestList
采用的三方库Moya
对ObjectMapper进行了改进,支持多个字段的解析,如:
username <- map["login|username", nested: false, delimiter: "|"]
采用的三方库ObjectMapper-Hi
对状态栏、导航栏、标签栏、刘海屏等涉及系统兼容型的常用方法,封装为:
screenWidth
screenHeight
deviceWidth
deviceHeight
isNotchedScreen
isRegularScreen
isSmallScreen
isMiddleScreen
isLargeScreen
采用的三方库QMUI_iOS
iOS 11+
请查看IOSTemplate
请查看SWHub
- 关于 ObjC:这是一个Swift库,在项目中可以通过桥接(OCHelper)使用Objective-C。
可以在项目中添加同名的图标来替换内置的资源,
请查看内置资源
Core Model Router Network Resources Components(Cache/Theme/JSBridge)