Themeablebrowser打开浏览器页面与app之间的交互,调用app的分享组件

    首先能实现这个需求还得感谢晴天巨佬关于Themeablebrowser的文章,给了很大的帮助!!!


Themeablebrowser是调用外部浏览器插件,官方文档提供了下面几个方法:

addEventListener

添加事件

removeEventListener()

删除事件

close()

关闭浏览器窗口。

show()

显示隐藏打开的浏览器窗口

hide()

隐藏当前显示的InAppBrowser窗口。

reload()

重新加载当前页面

executeScript()

将JavaScript代码注入浏览器窗口

insertCSS()

将CSS注入浏览器窗口。

InAppBrowserEvent:官方文档的介绍

type :

    loadstart: 当InAppBrowser开始加载一个URL时抛出事件.

    loadstop: 当InAppBrowser结束加载一个URL时抛出事件.

    loaderror: 当InAppBrowser加载一个URL出现错误时抛出事件.

    exit: 当InAppBrowser窗口关闭时抛出事件.

url 已加载的网址。

code 错误代码,只有在loaderror的情况下。

message string错误消息,只有在loaderror的情况下。

我的需求场景是购买商品之后在Themeablebrowser打开的页面验证支付,支付成功之后跳转到支付成功页面,运营需要在这个页面调用app的分享,将该商品分享出去!

    首先上代码 H5页面代码:

H5页面就不多说了;

对应的js:


下面是app对应的ts:

    ts中最大的坑就是在addEventListener 事件函数内部的this作用域指向Themeablebrowser打开的网页,而不是app当前组件,所以首先定义了let order = this; 来保存当前组件用于在Themeablebrowser内部调用插件;


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  •   JavaScript 与 HTML 之间的交互是通过事件实现的。   事件,就是文档或浏览器窗口中发生的一些特...
    霜天晓阅读 8,863评论 1 11
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,403评论 19 139
  • Themeablebrowser是一个外部浏览器插件,它fork自inappbrowser,相比于后者,此插件的目...
    IT晴天阅读 11,603评论 3 9
  • 在草长莺飞的时候,我去了一趟喀纳斯。 喀纳斯在北疆,接近西北国境线的地方,曲回高山,森林草场,是一个国家地质公园。...
    小树莓汁阅读 3,345评论 2 4
  • 啊 天空 你为啥这么萌 啊 大地 你为啥这么冷 啊 高数 我一点也听不懂 啊 图书馆 也不能出声 啊 制图 她一看...
    滟溪阅读 1,313评论 1 3