WebViewJavascriptBridge的暂时理解
直接从项目里复制了一份关于WebViewJavascriptBridge使用的代码,注释部分是自己暂时的理解。孟哥说,callHandler类似于jq里的trigger,
registerHandler类似于jq的bind。暂时先这样理解,应该找本移动Web的书看看了。
function showMonthPicker(date) {
var data = {
timestamp: +date
};
window.connectWebViewJavascriptBridge && connectWebViewJavascriptBridge(function(bridge) {
bridge.callHandler('showMonthPicker', data, function() { });
// callHandler函数有三个参数,第一个参数是一个函数名,此函数名可看成APP内置的,
// 通过callHandler可以让APP执行showMonthPicker函数,并对showMonthPicker函数传入后面两个参数(data与fun)
});
}
function setMonthPicker(timestamp) {
vm.$set('selectedDate', timestamp);
}
window.connectWebViewJavascriptBridge && connectWebViewJavascriptBridge(function(bridge) {
bridge.registerHandler("setMonthPicker", function(data, responseCallback) {
// registerHandler函数有2个参数,第一个参数是一个函数名,此函数名是JS在APP上注册的,第二个参数是注册的函数名的函数体
// APP执行setMonthPicker时,是让JS执行了函数体里的内容,函数体的参数是通过APP执行setMonthPicker(data,responseCallback)时传给JS的。
var json = JSON.parse(data);
setMonthPicker(json.timestamp);
});
});
WebViewJavascriptBridge的暂时理解的更多相关文章
- verilog阻塞与非阻塞的初步理解(三)
下面这段源码是因为习惯不好,出现不正确波形的例子. module pwm_division(reset,clkin,clkout); input reset,clkin; output clkout; ...
- java--依赖、关联、聚合和组合之间区别的理解
在学习面向对象设计对象关系时,依赖.关联.聚合和组合这四种关系之间区别比较容易混淆.特别是后三种,仅仅是在语义上有所区别,所谓语义就是指上下文环境.特定情景等. 依赖(Dependency)关系是类与 ...
- Android应用开发中关于this.context=context的理解
在Android应用开发中,有的类里面需要声明一个Context的成员变量,然后还需要在该类的构造函数中加上this.context=context;这行代码.为什么要这么写呢?不写不行么? 先看下面 ...
- Unity 新手入门 如何理解协程 IEnumerator yield
Unity 新手入门 如何理解协程 IEnumerator 本文包含两个部分,前半部分是通俗解释一下Unity中的协程,后半部分讲讲C#的IEnumerator迭代器 协程是什么,能干什么? 为了能通 ...
- 深入理解Tomcat
简介 tomcat是一个web服务器,运行jsp和servlet,使用HTTP与客户端(通常是浏览器)进行通信. 构成 下图是tomcat的架构,可以看出:核心内容是Connector和Contain ...
- Http协议的理解
作者技术有限,这篇博文都是结合网上的文章和自己的理解而写的,若存在错误,请无私指出,十分感谢! 协议,就是一种标准,即大家都要遵守的标准. 举个简单的例子:在中国,几乎人人都会讲普通话,不同地区的人有 ...
- 亲测GO环境搭建,理解go build、go install、go get
GO下载: GO语言中文网下载:https://studygolang.com/dl Mac下直接通过brew instatll go指令即可完成下载安装 GO环境变量配置: $GOROOT=/usr ...
- 深入贯彻闭包思想,全面理解JS闭包形成过程
谈起闭包,它可是JavaScript两个核心技术之一(异步和闭包),在面试以及实际应用当中,我们都离不开它们,甚至可以说它们是衡量js工程师实力的一个重要指标.下面我们就罗列闭包的几个常见问题,从回答 ...
- JavaScript es6 class类的理解。
本着互联网的分享精神,在本篇文章我将会把我对JavaScript es6 class类的理解分享给大家. JavaScript 类主要是 JavaScript 现有的基于原型的继承的语法糖. 类语法 ...
随机推荐
- MySql之安装配置
1.解压Mysql.zip后,添加bin目录的环境变量 2.配置my.ini文件中的 # basedir =D:\mysql-5.6.24-winx64 # datadir = D:\mysql-5. ...
- 读取全球ip获取用户地区
这个 首先说明下.ip库是qq纯真ip库 dat文件类型 public static string QQipPath = AppDomain.CurrentDomain.BaseDirectory + ...
- hdu 5976 Detachment
Detachment Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total ...
- linux中shell变量$#,$@,$0,$1,$2的含义解释(转)
变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 ...
- [fortify] 不安全的函数eregi()
PHP 5.4/5.3弃用函数eregi() memory_limit绕过漏洞 [日期:2012-04-02] 来源:Linux社区 作者:Linux [字体:大 中 小] 发布日期:2012- ...
- 数据库软件dbForge Studio for MySQL更新至v.6.1
本文转自:慧都控件网 说到MariaDB,这个数据库算是MySQL的一个分支.现在非常的流行,很多地方都能看到它的身影.MariaDB作为一种新的数据库管理系统,在短时间内获得如此高的关注度.这也是D ...
- 『TCP/IP详解——卷一:协议』读书笔记——10
2013-08-22 22:57:17 3.8 ifconfig命令 这个命令在Linux系统下可以通过下面的指令阅读说明文档: ifconfig 由于书中作者用的系统比较早的某Unix系统,所以我的 ...
- 关于Xcode7中添加不了libresolv.dylib等类似库的问题
Xcode7中,由于某些机制,使得我们在添加类似于 libresolv.dylib.libz.dylib等库的时候,直接在Build Phases中点击加号添加,似乎已经无法找到相应的库.此时,我们可 ...
- oracle根据视图删除表
delete from t_fwaqjcjl where zcbm in (select zcbm from view_fwaqjcjl where 1=1 )
- C++查找指定目录下所以指定类型的文件
/*************************************************************** 函数名称:FindFile 查找指定目录下指定文件 输入:fileNa ...