# BossWebFramework (opens new window)
# 因Boss预约项目Vue为主框架,原生需要与其交互,并且需要兼容iPhone和iPad机型。所以封装该库进行统一兼容。其中封装了web主框架、弹窗和IM三个组件满足与Vue互相调用需求。
# 说明
该组件封装组件,每个组件需要上层逻辑调用。
组件 | 说明 |
---|---|
MainWebController (opens new window) | 封装了Vue承接的主WEB框架,负责跟VUE交互 |
WebInputView (opens new window) | 封装Vue调用可输入内容的图层 |
WebInputStickyView (opens new window) | 封装Vue调用可输入内容样式为紧贴在键盘的上沿的图层 |
BossChatController (opens new window) | 提供Boss预约模块IM聊天组件 |
# 安装
- 该组件适用于IOS 10 (opens new window) 及以上SDK应用运行
- 该组件遵守Cocoapods (opens new window) 协议,并通过Cocoapods (opens new window) 进行集成
在项目 Podfile 文件内添加
pod 'BossWebFramework'
在项目目录下执行脚本
pod install
插件即可集成至项目内
# 使用 MainWebController
初始化MainWebController对象,并生成WEB容器,并负责与Vue交互
/**
需要封装 NSURL 对象进行传递参数
*/
+ (UINavigationController *)buildWithUrl:(NSURL *)url;
提供多个Blocks进行上层进行绑定
/**
webView
*/
@property(nonatomic, copy) void (^initWebViewBlock)(DWKWebView *viewView);
/**
获取用户信息Block
*/
@property(nonatomic, copy) NSDictionary * (^getUserInfoBlock)(void);
/**
保存授权信息
*/
@property(nonatomic, copy) void (^saveAuthInfoBlock)(AuthInfo *info);
/**
退出登录Block 刷新token失败
*/
@property(nonatomic, copy) void (^refreshTokenLoginOutBlock)(void);
/**
进入设置页面
*/
@property(nonatomic, copy) UIViewController * (^enterSettingPage)(void);
/**
埋点开页面
*/
@property(nonatomic, copy) void (^trackOpenPage)(NSString *openPageName);
/**
埋点关页面
*/
@property(nonatomic, copy) void (^trackClosePage)(NSString *closePageName);
# 使用 BossChatController
初始化BossChatController对象并显示聊天界面
- (void)showInController:(UIViewController *)controller
taskId:(NSString *)taskId userId:(NSString *)userId
canInput:(BOOL)input
closeBlock:(void (^)(NSString *taskId))closeBlock
sendMsgBlock:(void (^)(void))sendMsgBlock;