javascript - 从 Vue.js 组件数据中导入的辅助类调用函数

标签 javascript class vue.js vuetify.js

我正在尝试从 Vue.js 中导入的帮助器 class 调用 JavaScript function 组件。我在我的组件导入我的帮助器class并尝试使用mounted()来调用它并传递参数到助手

我从这里尝试了一些解决方案,但没有帮助: Vue.js: Import class with function and call it in child component

https://forum.vuejs.org/t/how-to-use-helper-functions-for-imported-modules-in-vuejs-vue-template/6266

这是我到目前为止尝试过的,有什么想法吗?

我有一个辅助类myHelper.js:

export default myHelper {
    myHelperFunction(param) {
        return param;
    }
}

我有一个 Vue 组件 MyComponent.vue:

<template>
  <v-text-field :rules="[myRule]"></v-text-field>
</template>

<script>
import myHelper from './myHelper.js';

export default {
  name: 'MyComponent',
  data() {
    return {
      myCls: new myHelper(),
      myRule: this.callHelperFunction,
    };
  },
  components: {
    myHelper,
  },
  mounted() {
    this.myCls.myHelperFunction();
  },
  methods: {
    callHelperFunction(param) {
      this.myCls.myHelperFunction(param);
    }
  },
};
</script>

最佳答案

您并没有真正导出该类。它是一个普通的对象。要导出类而不是对象,请执行以下操作:

// Notice the use of class keyword
export default class MyHelper {
    myHelperFunction(param) {
        return param;
    }
}

此外,您不需要:

components: {
    myHelper,
},

其余代码保持不变。

关于javascript - 从 Vue.js 组件数据中导入的辅助类调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56648185/

相关文章:

javascript - 正在申请:focus CSS to input-field in shadowDOM and :focus CSS to shadow host

javascript - 无法清除模态窗口关闭操作上的间隔

javascript - 使用 yield 等待异步代码完成

c# - 在 C# 中调用 SQL 连接方法

javascript - 设置初始 vuetify v-select 值

javascript - 对象属性更改时如何在vue js中获取对象索引?

javascript - Bootstrap Sass 3.3.6 - Javascript - 导航栏下拉菜单 - 不扩展

java - 类对象与 HashMap

android - 如何将字符串转换为类名

javascript - VueJS 应用程序中缺少静态文件