Android 中如何调用 vue 组件 methods 中定义的方法
需求:在android中调用 vue 组件中 methods 选项中定义的方法。
如:
export default {
name: 'foo',
methods: {
test () {
alert('hello, from android')
}
}
}
我已经在 main.js 中将 vue 挂载到 window 对像上了。
window.Hybrid.vm = new Vue({
})
现在想要在 android中通过某种方式调用 这个组件中的 test()
方法
script ????
mHybridWebView.evaluateJavascript(script, null)
这里的 script 该怎么写?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
好吧,一天过去了。没人解答。可能是太简单了。
这里把自己的解决方案说一下。
首先是搞清楚思路。想要 webview 来调用某个方法,必须把它暴露到某个 widwon 的对象上,我们在 vue 组件中 methods 选项中定义的方法,会被绑定到 vue 实例上。
如果有个办法能够同时把这个方法绑定到自定义的 window 实例上就好了。我这里是:window.Hybrid
我的做法是,做了一个 vue 的插件,这个插件可以发送 scheme 协议,webview 可以扑获,然后如果其中有 callback 则进行回调。在组件中也可以通过这个插件,将某个方法绑定到window对象中,然后webview就可以自己进行调用了。
伪代码
楼主写的太复杂了, 一行代码的事情, 搞出这么多, methods里面定义的方法, 需要赋值给window,