function build() {
  let wenzhen = window.external.接口函数();
  let listtijian = JSON.parse(wenzhen);
  return listtijian;
}

window.external.myfunc()来调用浏览器提供的外部方法myfunc。可以让网页内的js脚本中能调用C++代码。
用vue写在vue的外面。调用的直接调用 build();

如果需要从外面拿里面data的参数 就是 vm.值。

————————————————————————————————————————————
更新个写法!上面那个开发效率也很不友好,而且传参数的时候 也不方便。比如当想调用数据,又想有一个动态加载的转圈Loging。C++调用的只是一个函数 又不能说在http.js里去配置公共的axios的请求加载的设置。所以需要自己封装一个。

在一个js里封装一个调用方法!
/**
  * 自定义ajax
  * @param {*} url 接口地址
  * @param {*} datas 
      有参数{
         Id: id,
         Code:Code
      }
      无参数null
  * @param {*} fn 
  * @param {*} error 
  */
myAjax(url,datas, fn, error) {
    // this.show()  //这是在一个加载动态Loging的js里配置的。只需要在这定义一下请求的时候显示转圈
    let data = datas ? '\'' + JSON.stringify(datas) + '\'' : '';
    let wenzhen = eval(`(window.external.${url}(${data}))`);
    let listtijian = JSON.parse(wenzhen);
    setTimeout(() => {
      if(listtijian.code=="200"){
        fn(listtijian)
        // this.hide();//这是在一个加载动态Loging的js里配置的。只需要在这定义一下请求完以后转圈消失
      }else{
        error(listtijian.msg)
      }
    }, 300)
  } 

// main,js里配置
import loading from './components/loading/loading.js' // 引入loading
Vue.use(loading) // 全局使用loading
// 没参数调用的方法
this.$loading.myAjax('接口', //获取已执行体格检查项
    null,
    data => { 
        this.list =  data.data
    },
    error => {
      alert(error)
    }
)
// 有参数调用的方法
 this.$loading.myAjax('接口',
    {
     Id: this.Id,
     Code: this.Code,
    },
    data => { 
        this.list =  data.data
    },
    error => {
      alert(error)
    }
    )

至于加载的动画Loging~ 需要就用不需要就不用!百度一下,有很多!

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐