Карта источника, сгенерированная webpack, слишком велика, когда ссылаетесь на другую библиотеку - PullRequest
0 голосов
/ 25 апреля 2019

Я хочу создать библиотеку и настроить веб-пакет для этой цели.Это проект «Реакция + машинопись».Если я не ссылаюсь ни на какую другую библиотеку, она кажется идеальной. В среде разработки, webpack просто генератор 10 + k js файл включает в себя inline-source-map.Но когда я использую другую библиотеку, такую ​​как antd, она создаст файл 15M + js.

Очевидно, что веб-пакет создает исходную карту для модулей, которые находятся в каталоге node_modules. Это делает меня неудобным, даже если исходная карта будет исключена из производства.Как я могу настроить webpack так, чтобы он игнорировал каталог node_modules, когда он генерирует исходную карту?Я попытался использовать SourceMapDevToolPlugin или source-map-loader и установить параметры исключить или включить. Это не работает.Я думаю, что на него повлиял awesome-typescript-loader.

Весь пакет - Newest.webpack: "4.30.0" Существует одна из сбойных версий.

module.exports = {
  entry: "./src/index.ts",
  output: {
    filename: "demo.js",
    library: "Demo",
    libraryTarget: "umd",
    libraryExport: "default"
  },
  devtool: "inline-source-map",
  plugins: [
    new CleanWebpackPlugin(),
    new SourceMapDevToolPlugin({
      exclude: /node_modules/
    })
  ],
  resolve: {
    extensions: [".ts", ".tsx", ".js", ".jsx"],
    alias: {
      "@Src": path.resolve(__dirname, "src")
    }
  },
  module: {
    rules: [
      {
        test: /\.(ts|tsx)?$/,
        loader: "awesome-typescript-loader"
      },
      {
        test: /\.less$/,
        use: [
          {
            loader: "style-loader"
          },
          {
            loader: "css-loader",
            options: {
              modules: true
            }
          },
          {
            loader: "less-loader"
          }
        ]
      },
      {
        test: /\.(png|svg|jpg|gif)$/,
        use: ["file-loader"]
      }
    ]
  },
  externals: {
    react: "React"
  }
};

Спасибо заЧтение. Извините за английский язык.

...