我的旧应用程序中有一些旧的自定义类.此类的定义如下:
/** @namespace MyClass */
"use strict";
var MyClass = (function () {
var Constr = {};
Constr.func1 = function () {...};
...
Constr.funcN = function () {...};
return Constr;
}());
在我的应用程序中,我以老式的方式导入了该类:
<head>
<script src="./static/MyClass.js"></script>
...
</head>
现在,我尝试并喜欢VueJS框架.我想要实现的是将旧的旧类导入到新应用程序中.我不喜欢以旧的方式将其导入index.html中,但是我想在我的自定义Vue组件中进行导入.因此,在我的TestComponent.vue中,我希望能够执行以下操作:
import MyClass from './static/MyClass.js' // or from './assets/MyClass.js' ?
但是我不确定,我该怎么做.
解决方法:
由于您尝试导入它,因此必须从myClass.js中导出该类.不需要IIFE,因为您将处于模块范围内,而不是全局范围内,因此无需担心全局污染:
// MyClass.js
export default const Constr = {};
Constr.func1 = function () {...};
Constr.funcN = function () {...};
就是说,您在这里拥有的只是具有属性的普通对象,而不是类,因此最好不要将其称为MyClass.