1.0.5 • Published 1 year ago
@duoke/gm-native-js-sdk v1.0.5
多客移网页与原生通信的js sdk
- 协议动态注册
- 纯js,不限制任何框架
- 支持commonjs, es, umd方式
安装:
npm install @duoke/gm-native-js-sdk
api
setNativeFuncs(funcsObj) // 设置需要调用的协议列表
getNativeFuncs() // 获取所有协议列表
registerNativeFuncs(func) // 注册单个协议
registerNativeCall(func, callbackFn) // 注册原生调用的回调
callNativeAsyncFunc(func) // 异步调用原生
callNativeSyncFunc(func) // 同步调用原生
使用: vue 为例
// main.js
import { setNativeFuncs } from '@duoke/gm-native-js-sdk'
const nativeFuncs = {
DASHBOARD: {
QUERY: {
ns: 'DASHBOARD',
fn: 'QUERY',
},
},
NAVIGATION: {
SALE_STATISTIC_DETAIL: {
ns: 'navigation',
fn: 'saleStatisticDetail',
},
STOCK_STATISTIC_DETAIL: {
ns: 'navigation',
fn: 'stockStatisticDetail',
},
},
}
setNativeFuncs(nativeFuncs)
// ...其他代码
// 组件 script标签内
import { callNativeAsyncFunc, registerNativeCall, getNativeFuncs } from '@duoke/gm-native-js-sdk'
export default {
data() {
return {
funcs: {}
},
},
methods: {
handleCallback() {
//..
},
// 其他方法内, h5 调用客户端
handleInitiativeCallClient() {
callNativeAsyncFunc(this.funcs.NAVIGATION.SALE_STATISTIC_DETAIL)
}
},
created() {
this.funcs = getNativeFuncs()
// 注册客户端调用h5函数
registerNativeCall(this.funcs.DASHBOARD.QUERY, this.handleCallBack)
}
}