Я пытаюсь использовать Webpack с Babel для переноса модуля для использования с тегом.Webpack переносится правильно, но когда я пытаюсь создать новый экземпляр, не работает.
Мой .babelrc:
{
"presets": [
[
"@babel/env",
{ "modules": false }
]
],
"plugins": []
}
Моя конфигурация в Webpack:
{
test: /\.js$/,
exclude: /(node_modules|bower_components|coverage)/,
use: [
{
loader: 'babel-loader',
options: {
presets: [
['@babel/preset-env', { modules: false }]
]
}
}
]
}
Пример класса JS:
class Test {
constructor(options) {
this.init = options.init || '';
}
someMethod() {
console.log('Working');
}
}
В HTML-коде я помещаю тег сценария и вызываемый сценарий:
<script src="../dist/test.component.js"></script>
<script>
var foo = new Test({
init: "#hello"
});
</script>
Инструменты разработчика показывают следующую ошибку:
Uncaught TypeError: Test не является конструктором
Я пробовал с некоторыми плагинами Babel или Webpack, но ничего.
Выходная конфигурация Webpack имеет
output: {
path: path.resolve(__dirname, 'dist'),
library: 'Test',
libraryTarget: 'umd',
umdNamedDefine: true
},
Ну, я не знаю, что случилось.
С уважением.