我有一个由我自己制作的前端库,我正在尝试在webpack的构建过程中使用它。该库正在通过标签在浏览器中直接加载,但是我决定转到构建过程。 我通过原型范式使用了一组类似类的函数(我知道ES6中有类构造,但是我必须避免完全重写此库)。
我有一个名为Widget的“类”函数(即构造函数),可以导出,但该函数还有一个“静态方法” get,它直接作为属性分配给该函数。
//widget.js file content
export function Widget()
{
....
}
Widget.prototype=....
Widget.get=function()
{
....
}
在另一个模块中,我只是通过命名导入将其导入。然后,当我使用Widget时,它可以正常工作,但是当我尝试使用“静态方法”时,它表明未定义。
//main.js file content
import {Widget} from "./widget.js"
var w= new Widget();//---working! Widget is defined and i can use it
var a=Widget.get(...);//--- not working! Widget.get seems to have been not exported
我不明白为什么尚未导出(或导入)仅是函数属性的.get
。
有没有一种解释,当然还有一种使我工作的方法?
PS:我当然不想使用Widget.prototype.get=function(){....}
,因为这样.get
方法将成为“实例方法”而不是“类方法”。
谢谢