这是一个用于javascript与原生交互的库
🏠 Homepage
- IOS >=8.0.0
- android >=4.4
npm install ebrige --save
import Ebrige from 'ebrige'
// Promise调用
// 调用原生方法(传递参数)
Ebrige.dispath('getUser',{token:'token'}).then(res=>{
// res is native return data
})
// 不传递参数
Ebrige.dispath('getUser').then(res=>{
// res is native return data
})
// 普通回调调用
// 调用原生方法(传递参数)
Ebrige.dispath('getUser',{token:'token'},res=>{
// res is native return data
})
// 不传递参数
Ebrige.dispath('getUser',res=>{
// res is native return data
})
// 在vue中使用
Vue.prototype.$ebrige = Ebrige
this.$ebrige.dispatch('getUser',{token:'token'}).then(res=>{
// res is native return data
})
在使用过程中,原生(ios和android统称为原生)需要监听浏览器的跳转事件,并截取。
brige://getUserInfo?callId=getUserInfo1562665696408
- brige:协议名
- getUserInfo:方法名
- callId=getUserInfo1562665696408:原生向H5沟通的凭证
在原生处理完操作后,需要将结果返回给web,这时候想要向web中注入代码来通知web,代码实例为
// 这是在原生进行某些操作(比如获取地理位置)后,操作成功并向前端返回数据,responseData数据格式为JSON
window.$ebrige.callSuccess(callId,responseData)
// 这是在原生进行某些操作(比如获取地理位置)后,操作失败并向前端返回数据,responseData数据格式为JSON
window.$ebrige.callFail(callId,responseData)
-
自定义配置
-
长连接
-
单元测试
可以不传,但凭证是必传的(除味直接将webview关闭)
npm run test
npm run demo
👤 惜纸
- Github: @https://github.com/chengpeixin
Contributions, issues and feature requests are welcome!
Feel free to check issues page.
Give a ⭐️ if this project helped you!
This README was generated with ❤️ by readme-md-generator