如何将本地js脚本包含在vue js中并在组件中使用它们(requirejs)

时间:2020-06-16 17:27:15

标签: javascript vue.js requirejs

我是Vue的新手,目前正在尝试构建一个使用外部本地javascript文件的vue应用。 我的设置是:

-public
  - index.html
  - require.js
- src
  - assets
    - ex_app.js
    - subfolder 
      - ex_component.js
      - ...
  - components
    - my_component.vue
  - ...
  - main.js

一件容易做的事情是,外部脚本使用requirejs来加载依赖项。

有效的方法是通过以下方式将外部源放入index.html:

<script src="require.js"></script>
<script>require(["ex_app.js"])</script>

并保留 ex_app.js 不变(它使用require通过相对路径加载ex_component.js文件)。

但是此设置的问题是,我需要对 ex_app.js 的事件做出反应,并且不知道如何正确执行此操作。因此,我尝试将代码从 ex_app.js 移至 my-component.vue 的脚本部分,并将所需的外部脚本包括到main.js中:

my-component.vue:

<template>
    ...
</template>

<script>
export default {
  name: "Viewer",
  data() {
    return {
      name: ""
    };
  },
  mounted() {
    this.$nextTick(() => {
      this.myFunc()
    })
  },
  methods : {
  myFunc() {
     var myExComp= new ExComp();
    });
},
},

</script>

main.js:

...
import ExComp from './assets/subfolder/ex_component.js'
Vue.use(ExComp);
...

但是随后我得到了 ExComp 未定义的信息。我希望问题能解决。我试图对其进行抽象。

0 个答案:

没有答案