vue与ios交互 stringByEvaluatingJavaScriptFromString

刚入职一家公司,让做的东西是和ios合作的,取用的数据没接口要用本地数据库。ios的同事说在app环境下他会直接给我提供一个方法如下

SqlQueryFile()

我查了查也许他是用stringByEvaluatingJavaScriptFromString方法给我html里插入了script标签相当于给我js写入了一个function类似下面这种,我不知道是不是这样。

[webView stringByEvaluatingJavaScriptFromString:@"var script = document.createElement('script');"  
"script.type = 'text/javascript';"  
"script.text = \"function myFunction() { "  
"var field = document.getElementsByName('q')[0];"  
"field.value='朱祁林';"  
"document.forms[0].submit();"  
"}\";"  
"document.getElementsByTagName('head')[0].appendChild(script);"];   
[webView stringByEvaluatingJavaScriptFromString:@"myFunction();"];  

直接调用这个方法以后,他又给了我一个方法名如下,response就是他返给我的数据

 SqlUpdateComplete (identify, state, response){
    //do something
    }

问题来了,因为要各种方式操作大量数据,我想用vue做这个需求,但是我写了如下代码(该方法在jquery下有效),没有任何反馈。我查了资料说是要把方法暴露在window下,但是又不知道细节如何。

 mounted() {
   SqlQueryFile(this.allData) //发起请求
    //接收函数
   SqlUpdateComplete (identify, state, response){
      if(identify == 3){
        alert(333)
      }
    }
 },
阅读 1.9k
1 个回答
新手上路,请多包涵

window.你的方法 = this.你的方法

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题