webpack: функция экспорта / импорта со свойствами - PullRequest
0 голосов
/ 05 ноября 2019

У меня есть библиотека внешнего интерфейса, созданная мной, и я пытаюсь использовать ее в процессе сборки с веб-пакетом. Библиотека работала с прямой загрузкой в ​​браузере через тег, но я решил перейти к процессу сборки. Есть набор функций, которые я использую как классы через парадигму прототипа (я знаю, что в ES6 есть конструкция класса, но я должен избегать полного переписывания этой библиотеки).

У меня есть "класс"функция (то есть конструктор) с именем Widget, которую я экспортирую, но у этой функции также есть «статический метод» get, который назначается функции непосредственно как функция.

//widget.js file content
export function Widget()
{
....
}
Widget.prototype=....
Widget.get=function()
{
....
}

В другом модуле я просто импортируюэто через именованный импорт. Затем, когда я использую Widget, он работает отлично, но когда я пытаюсь использовать «статический метод», get говорит, что он не определен.

//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 метод станет «методом экземпляра», а не «методом класса».

Спасибо

...