尝试导入库时出现Vue.js错误

时间:2019-10-09 08:14:54

标签: vue.js ionic-framework mobile bluetooth

我很尴尬,因为我不知道为什么我的图书馆无法正常工作。

注意:我是Vue.js的初学者

我已经安装了一个名为“蓝牙串行”的库,我想在组件中使用它,但是经过大量尝试后,它仍然无法正常工作

我在入口点main.js

import BluetoothSerial from "@ionic-native/bluetooth-serial/ngx";
Object.defineProperty(Vue.prototype, '$bluetoothSerial', { value: BluetoothSerial });

在我的组件中:

<script>
export default {
  name: "WattComponent",
  props: {},
  methods: {
    scan: function() {
      this.checkBluetoothEnabled();
    },

    checkBluetoothEnabled: function() {
      this.$bluetoothSerial.isEnabled().then(
        success => {
          console.log("enabled");
        },
        error => {
          console.log("erro");
        }
      );
    }
  }
};
</script>

正在调整:

vue.runtime.esm.js?2b0e:619 [Vue warn]: Error in v-on handler: "TypeError: Cannot read property 'isEnabled' of undefined"

found in

---> <WattComponent> at src/components/WattComponent.vue
       <Home> at src/views/Home.vue
         <App> at src/App.vue
           <Root>

1 个答案:

答案 0 :(得分:1)

尝试以下方法:

在您的main.js中(在其中创建Vue实例):

import Vue from 'vue';
import BluetoothSerial from "@ionic-native/bluetooth-serial/ngx";

Vue.prototype.$bluetoothserial = BluetoothSerial;

在您的.vue文件中:

methods: {
   foo(){
       this.$bluetoothserial.isEnabled().then(() => {
          //some code here
       });
   }
}