猫猫儿
猫猫儿
  • 发布:2020-08-10 22:58
  • 更新:2024-12-23 16:30
  • 阅读:13285

【UNIAPP坑与解决】VUE组件内部$getAppWebview出现Cannot read property '$getAppWebview' of undefined

分类:uni-app

开发当中,封装了一个vue组件,内部有webview。
为了获取这个webview的对象,又需要获取当前页面对象,于是查阅文档采用

this.$scope.$getAppWebview()

但运行时反复出现

Cannot read property '$getAppWebview' of undefined

起初以为是自己拼写和上下文的问题,查阅社区也没有相关讨论。
后来反复验证,发现vue组件内部不能调用这个方法,页面当中正常。
于是后来通过以下方式实现:

this.$parent.$scope.$getAppWebview();

不知道是不是BUG,但先发一篇文章,记录一下,万一有人遇到了呢

4 关注 分享
1***@qq.com w***@outlook.com r***@qq.com 1***@qq.com

要回复文章请先登录注册

4***@qq.com

4***@qq.com

应该是层级。。我的太多层了,找不到
2020-08-20 10:58
1***@qq.com

1***@qq.com

说来也巧,我今天遇到的这个问题 搜答案 全网就搜到你这一个,而且解决了 感谢老铁
2020-08-19 14:35
猫猫儿

猫猫儿 (作者)

回复 nicepainkiller :
这个获取到的是vue页面的对象,然后再通过childrens获取子webview,nvue不通用
nvue可以直接用ref获取webview对象,然后进行操作,API可以参考weex的<web>组件的文档
2020-08-14 16:16
nicepainkiller

nicepainkiller

回复 猫猫儿 :
nvue 的 webview
2020-08-14 13:19
猫猫儿

猫猫儿 (作者)

回复 nicepainkiller :
你是要操作vue页面还是底下的webview
2020-08-14 13:18
nicepainkiller

nicepainkiller

获取到了 之后 都能调用那些 方法?
this.$scope.$getAppWebview().loadURL('https://www.baidu.com/');

为啥没反应
2020-08-14 09:31
kmhy

kmhy

多谢大佬
2020-08-11 19:39
kmhy

kmhy

多谢大佬
2020-08-11 19:39