Vue页面获取安卓传参的方法
最近和安卓原生混合开发遇到了一个问题:安卓通过和我们声明同一种方法可以把值传递给我们;但是我们只能在window下面声明一个函数来接收,很显然,我们new的vue对象和window下面的该函数属于同级作用域,该函数内无法直接操作vue data中的值:如function getAndroid(a){alert(a);//安卓传值过来vm.msg = a;}结果就...
·
最近和安卓原生混合开发遇到了一个问题:安卓通过和我们声明同一种方法可以把值传递给我们;但是我们只能在window下面声明一个函数来接收,很显然,我们new的vue对象和window下面的该函数属于同级作用域,该函数内无法直接操作vue data中的值:如
function getAndroid(a){
alert(a);//安卓传值过来
vm.msg = a;
}
结果就是a可以打印出来,但是vm这个vue对象中的msg数据并没有变化!所以这种方式行不通;
接下来使用另一种方式,在该函数中调用vue对象的方法,通过这种方法传递改变vue data中的值,
methods: { //在vue的methods中定义一个方法
getRes(a){
alert(a)
this.msg = a //改变data中定义的值
},
}
//在全局中定义该函数
window['getAndroid'] = function(a){
vm.getRes(a)
}
结果是成功的,顺利的在vue中拿到了安卓传递过来的参数!
更多推荐
已为社区贡献3条内容
所有评论(0)