flutter webview_flutter与JS通信

主要代码:

WebView(

initialUrl:this.path,

javascriptMode: JavascriptMode.unrestricted,

onWebViewCreated: (WebViewController controller) {

_controller = controller;

},

//下边是重点:

javascriptChannels: [

_toasterJavascriptChannel(context),

].toSet(),

),


JavascriptChannel _toasterJavascriptChannel(BuildContext context) {

return JavascriptChannel(

name:'Toast',//这个那么是和js端约定的一个协议名,可以自定义

onMessageReceived: (JavascriptMessage message) {

//此处可以输出message '登录'

});

}

下边是JS端写的代码

Toast.postMessage('登录');

注意:上边JS代码 不能让eslint检测到,否则js端会报错

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • flutter中 webview在iOS中其实是用了原生的wkwebview,所以,flutter与js的交互跟i...
    叫我魏大川阅读 10,918评论 2 5
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,902评论 1 32
  • 最近整理了一下原生与H5之间的交互方式,简单的做个总结。OC端与JS的交互,大致有这几种:拦截协议、JavaScr...
    谈Xx阅读 31,290评论 41 75
  • 儿子睡着了,迎来了我的时间。发完货,撕两颗牛肉干,喝杯茶,在阳台,闻着花香晒太阳。这是一个愉快的下午。 有人问,加...
    脸萌的范儿阅读 803评论 0 0
  • 来到这落寞的星球 本就是星际远足的小插曲 光离子飞船的启动 需要我找寻人类中 依旧心怀真爱的个体 废墟林立的情感荒...
    少年李鱼阅读 3,352评论 1 3

友情链接更多精彩内容