У меня проблемы с компиляцией NPM модулей узлов в один файл с помощью Webpack. Скажем, после установки NPM module Dynamoose, и в моем файле TS:
import Dynamoose from 'dynamoose';
Dynamoose.AWS.config.update({
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
region: process.env.AWS_REGION
});
// more code
После запуска компиляции моего проекта через веб-пакет файл js в комплекте выглядит следующим образом:
больше кода больше кода
при выполнении файла js Я получаю сообщение об ошибке
"errorType": "Runtime.ImportModuleError",
"errorMessage": "Error: Cannot find module 'dynamoose'",
Я ожидаю, что исходный код Dynamoose сцепится с моим пакетом js файл после веб-пакета, но теперь он имеет только module.exports = require("dynamoose");
, и фактический Dynamoose не включен.
Файл веб-пакета выглядит следующим образом
module.exports = {
entry: entries(),
mode: NODE_ENV,
target: 'node',
optimization: {
minimize: false
},
output: {
path: path.resolve(__dirname, "dist"),
filename: "[name].js",
libraryTarget: "commonjs2"
},
resolve: {
extensions: ['.ts', '.js'],
},
module: {
rules: [
{
test: /\.ts$/,
exclude: /node_modules/,
use: [
'ts-loader',
]
}
]
},
externals: [ nodeExternals() ],
plugins: [new FileZipPlugin()],
}