使用Webpack编译后缺少NPM模块es6导入

时间:2020-04-18 07:47:26

标签: typescript npm webpack

使用Webpack将NPM节点模块编译为一个文件时遇到麻烦。 在安装NPM模块ynoseose之后,并在我的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

运行webpack编译我的项目后,bundle js文件如下所示: enter image description here

更多代码 更多代码

执行js文件时出现错误

"errorType": "Runtime.ImportModuleError",
  "errorMessage": "Error: Cannot find module 'dynamoose'",

我希望在Webpack之后将dynamoose源代码连接到我的bundle js文件中,但是现在它只有module.exports = require("dynamoose");,并且不包含实际的dynamoose。

webpack文件如下所示

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()],
}

0 个答案:

没有答案
相关问题