首页 > 解决方案 > webpack 生成 umd 模块中断并返回 'use strict'

问题描述

在此处输入图像描述

在第 19 行,它只是return use strict直接的,所以当我尝试导入这个打包的模块时,我得到的只是一个字符串'use strict'。

在 tsconfig 中,我已经将 noImplicitUseStrict 设置为 true 但没有帮助。

在此处输入图像描述

webpack.config.js

const path = require("path");
const TerserPlugin = require("terser-webpack-plugin");

module.exports = {
  mode: "development",
  experiments: { outputModule: true },
  entry: {
    index: {
      import: "./src/index.ts",
      library: {
        name: {
          root: "pazzleAntdWidgets",
          commonjs: "@pazzle/antd-widgets",
        },
        type: "umd",
        umdNamedDefine: true,
        export: "default",
      },
    },
    // esm: {
    //   import: "./src/index.ts",
    //   library: {
    //     type: "module",
    //   },
    // },
  },
  output: {
    path: path.resolve(__dirname, "dist"),
    filename: "[name].js",
  },
  module: {
    rules: [
      {
        test: /\.tsx?$/,
        use: "ts-loader",
        exclude: /node_modules/,
      },
    ],
  },
  resolve: {
    extensions: [".tsx", ".ts", ".js"],
  },
};

标签: webpack

解决方案


推荐阅读