Vue界面中关于APP端回调方法问题

混合开发中APP与HTML回调问题解决
在混合开发里,HTML界面常需调用APP原生方法,APP也有回调需求。若将回调方法写在vue methods内,APP主动触发时会找不到方法而出错。问题在于APP会到window下查找方法,解决办法是将方法定义到window下。

在混合开发中,HTML界面经常性的需要调用APP端提供的原生方法,而且在很多时候,APP端需要各种回调,如果将所有的回调方法写在内部,不是很方便,而且有些时候,APP端需要定义一些主动触发HTML界面的方法,此时就会出现一个略坑的问题:

如果将该方法写在vue methods内,当APP主动去触发这些方法时,就会发现无法获取到这些方法,导致出错!

针对这个回调问题,在询问了一些同事之后找到问题所在:在APP端主动触发HTML方法的时候,会到window下面去查找该方法,但是如果将方法设置到methods中,就会导致APP端找不到该方法,调用失败,解决方法如下:

将方法定义到window下,代码如下:

// 将方法绑定到window下面,提供给外部调用
mounted(){
      window['rightFunctionName'] = () => {
          this.getRule();            //回调方法需要执行的代码
          /*代码块*/
      }
 },

采用这种定义方式即可解决APP端调用问题

转载于:https://www.cnblogs.com/hellman/p/10905601.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值