有很多相同的问题,没有一个主题能解决我的问题
我想构建我的docker映像,但是我不想在映像中放入node_modules
,所以我将所有代码捆绑在一起使用webpack,然后删除node_modules
插件将具有默认导出,可能是ES6类或函数,因此我按照https://stackoverflow.com/a/30760236/7529562
检查导出是类还是常规函数,
function isClass(v) {
return typeof v === 'function' && /^\s*class\s+/.test(v.toString());
}
当我运行node index.js
时,就可以了
但是在将所有代码捆绑到bundle.js中之后,请使用node bundle.js
说
TypeError: Class constructor cannot be invoked
without 'new'
当前行为是什么?
投掷TypeError: Class constructor cannot be invoked
without 'new'
复制存储库 https://github.com/iamwwc/webpack-isClass-report
克隆此仓库并关注自述文件
一个非常简单的仓库,没有太多代码
预期的行为是什么?
它应该毫无例外地运行TypeError: Class constructor cannot be invoked
without 'new'
更重要
如果我运行的bundle.js
代码没有格式(所有代码都在一行中),它将抛出异常
但是,如果我使用VScode Beautify扩展名来格式化js,然后运行node bundle.js
,则效果很好
您可以在下面找到两个文件
https://gist.github.com/iamwwc/84c5836036ded93728542883b9650877
其他相关信息:
webpack版本:4.25.0(全局)/// ^ 4.29.0(本地)
Node.js版本:v10.13.0
操作系统:Windows 10 pro 1809
其他工具:打字稿