Можно ли вообще переносить javascript с классами в отдельные файлы с помощью веб-компилятора?
Я пытаюсь использовать веб-компилятор для переноса моих Javascripts. Кажется, что это работает в некоторых отношениях, но я не могу заставить его работать, когда я помещаю классы в отдельные файлы и импортирую их.
То, что я хочу, и то, что я думаю, что я должен получить, является переданным файлом, содержащим и класс и код, использующий это. Если я помещаю весь код в один и тот же файл, он работает, поэтому я считаю, что это часть импорта, которую я делаю неправильно.
Допустим, я положил это в app.js:
class Polygon {
constructor(height, width) {
this.height = height;
this.width = width;
}
test() {
alert("Hello World!");
}
}
var x = new Polygon(40, 20);
x.test();
затем я получаю переданный файл, который содержит много кода, но основная часть (я думаю) состоит в том, что мой класс фактически включен. Например, я четко вижу свою функцию:
_createClass(Polygon, [{
key: "test",
value: function test() {
alert("Hello World!");
}
}]);
И когда я запускаю его в моем браузере, он показывает, что я предупрежден. Но, если я помещу класс в отдельный файл и использую импорт, вот так:
polygon.js:
class Polygon {
constructor(height, width) {
this.height = height;
this.width = width;
}
test() {
alert("Hello World!");
}
}
И импортируйте его в app.js, вот так: app.js:
import { Polygon } from './polygon'
var x = new Polygon(40, 20);
x.test();
Транспортированный файл не содержит мой класс или функцию, и поэтому не работает, когда я запускаю код.
Это ожидается? И если так, есть ли способ сделать это на самом деле? Я знаю, что есть другие инструменты, такие как WbPack, но можно ли это решить с помощью WebCompiler?