cefc-biz-utils
Bridge
.open(url, title)
开启新的 WebView 打开 url,设置标题为 title(默认为页面标题)
.close()
关闭当前 WebView
.exit()
退出 SDK,回到接入方界面
.oac()
进入开户流程界面
.scanIDCard(ok, fail)
扫描身份证
.video(options, ok, fail)
开始双向视频
Data
user
, oac
, meta
均存于内存;
Fields
存于 localStorage
.getUser()
获取用户信息
.setUser(user)
设置用户信息
.getOAC()
获取开户状态信息
.setOAC(oac)
设置开户状态信息
.getAppMeta()
获取应用描述信息
.setAppMeta(meta)
设置应用描述信息
Fields
SHAREHOLDER_NOS
股东账号CLIENT_NO
客户号MOBILE
手机号SETTINGS
系统偏好设置
.get(field)
.set(field, val)
.getShareholderNo(marketType)
根据市场类型获取股东账号
- 深圳SZ - '0'
- 上海SH - '1'
- 香港HK - '2'
Log
Example
// 程序入口 { ;}Log; // 程序其他部分Log;
.init(reporter)
.warn()
.error()
.info()
.debug()
.trace()
.genTpHeader(config)
生成三方渠道的 header 参数,签名、接口统计、用户标识信息
config
Request config 对象
Tracker
Example
; if processenvNODE_ENV === 'production' // 上传数据函数 { ; } // 页面停留时间监控 history;
.pageView(reporter)
页面切换时统计页面停留时间
.genTrackStat()
生成接口统计所需的 Header 参数
// 一次会话一个 ID,最好在 Node Server 端生成 // 目前每加载一次页面会生成一个 ID,并不是一次会话一个 ID // 因为 Node Server 端多进程没有共享 Session requestAppId: SESSION_ID pageid: windowlocationhref uuid: requestTime: Date
ReduxStore
配置 store 及动态添加 reducers
Example
; const store = ; { return dispatch history request ... request
Redux 文件示例
;; const ActionType = QUERY_ASSETS: 'QUERY_ASSETS' CONFIG_BIZ_HOME: 'CONFIG_BIZ_HOME'; { return { const fundId = ; return request; }} { const fundId = ; return { return request; }} /** * 约定 configure 设置静态的 state, 一般是临时固定在前端的数据 */ { return type: ActionTypeCONFIG_BIZ_HOME data } // 约定默认导出所有 actions queryAssets queryNotices configure ; const initialState = assets: fundId: null totalAmount: 0 marketAmount: 0 profitAmount: 0 expendableFund: 0 banner: '' menus: ; { const type data = action; } // 约定所有 reducers 都作为 reducers 导出// 供外部引用 redux 文件后调用 `addReducer(store, reducers);`const reducers = home ;
Request
处理与服务端通信,主要功能点如下:
- 请求中支持 loading 状态
- body 参数结构化
- 限制同一接口多次频繁请求
- 针对业务错误码或请求网络错误友好提示
- Header 中签名/统计/用户标识信息
- 打通 nginx、node、service 标识请求唯一的字段
- 异常日志记录
Example
// 配置默认 baseURL, 使用相对路径,会自动加上 baseURL 做前缀,使用绝对路径 baseURL 会忽略// 默认配置 sas 服务为 baseURL,行情接口请求时可直接传绝对地址RequestrequestdefaultsbaseURL = CONFIGAPI_SERVER;// 超时设置Requestrequestdefaultstimeout = 1000 * 60;// 根据请求配置生成自定义 headersRequest { return sign: ; };// 自定义组装 body 的结构Request { return params: data ; };// 配置 loading 样式Requestloading = on: true { Loading; } { Loading; } { Loading; };// 业务错误码默认处理Request