Vue JS NPM 模块导入组件

Posted

技术标签:

【中文标题】Vue JS NPM 模块导入组件【英文标题】:Vue JS NPM Module imported into Component 【发布时间】:2021-03-28 08:40:38 【问题描述】:

我正在尝试将一个 npm 包导入到我的 vue.js 组件中。具体来说,我正在尝试将 ScrollMagic 导入到我的项目中,但我发现它是未定义的。

我之前看到有人建议它应该在我的 mount() 钩子中,我正在这样做,但是我的 import 语句(我在 main.js 和 components 标记中都尝试过,但都返回了未定义的变量。任何方向将不胜感激。

我的组件的脚本:

<script>
import  ScrollMagic  from 'scrollmagic';

export default 
  name: 'Scroller',
  mounted() 
    console.log(ScrollMagic);
  ,
;
</script>

在我的 main.js 中

import Vue from 'vue';
/*
IMPORT STATEMENTS FOR MODULES GO HERE
*/
import sm from 'scrollmagic';
import gsap from 'gsap';
import App from './App.vue';
import './registerServiceWorker';
import router from './router';

Vue.config.productionTip = false;
/*
Usage statement
*/
Vue.use(sm);
Vue.use(gsap);

new Vue(
  router,
  render: (h) => h(App),
).$mount('#app');

【问题讨论】:

【参考方案1】:

也许 scrollmagic 包没有导出变量或函数ScrollMagic,所以它一直未定义?

你试过了吗:

import * as ScrollMagic from 'scrollmagic';
// OR
import ScrollMagic from 'scrollmagic';

【讨论】:

以上是关于Vue JS NPM 模块导入组件的主要内容,如果未能解决你的问题,请参考以下文章

VUE - 未找到模块。无法导入组件

将 Vue npm 模块导入我的 javascript 文件

Vue.js - 将自定义指令导入为 ES6 模块

无法将 ES6 模块导入 Vue 单文件组件

解决 import 导入 umd 模块报错的问题

如何发布 Vue.js 组件库?