[摘要]本篇文章给大家带来的内容是关于JavaScript和原生应用常用的数据交互方式的介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。场景1在原生app中经常会使用到H5页面,比如说电...
本篇文章给大家带来的内容是关于JavaScript和原生应用常用的数据交互方式的介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
场景1
在原生app中经常会使用到H5页面,比如说电商中的活动页,一些电商中的详情页,等等...这些页面都有一个特点,那就是在未来修改的可能性,和一次性的几率特别的大。所以用H5的页面是最睿智的一种选择。
一旦使用了H5那么就少不了和原生开发的一些交互(Android, IOS)如下的方案能够帮助你解决。
其实现原理是原生在js的window对象中注入一个js方法,以备原生应用进行处罚触发,就和我们平时去调用onclick的方法一样简单。
js代码:
// mobile/index.js 常用js 调用原生的方式都在这里体现。
export default {
/**
* 调用移动端方法
*
* @param {*} {name, params, call} 移动端注入的方法名 参数 回调
*/
callMoblieMethods({name, params, call}){
// 移动端安卓的环境
if(window.android) {
// 移动端使用java所以不能直接解析json,只能解析字符串或者json字符串
window.android[name](JSON.stringify(params));
}
// 移动端IOS的环境
if(window.webkit && window.webkit.messageHandlers) {
window.webkit.messageHandlers[name].postMessage(params);
}
}
}