如何在vue中优雅的使用ocx控件:控件事件处理

ocx控件除了拥有功能方法外,有的控件还有事件回调,在vue中使用事件时须要特殊的技巧。javascript

先来看下在传统项目中的使用方式:vue

<script LANGUAGE=javascript FOR=MSComm1 EVENT=OnComm>
    MSComm1_OnComm();
</script>

结合上篇文章中提到的iframe方式,咱们能够很好的使用ocx控件的事件。可是有没有不借助iframe直接使用事件的方法呢?java

答案是有的,那就是使用 attachEvent 或者 addEventListener 方法:this

<script>
export default {
  mounted () {
    let ocxobj = document.getElementById('CVR_IDCard')
    ocxobj.attachEvent('DetectCallBack',this.callBack)
  },
  methods: {
     callBack (){
        console.log('ocx事件')
     }
  }
}
</script>

使用这种方式有一个前提是IE版本必须是IE8-10,8如下和10以上都是不行的。code