You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Webpack集成swagger-ui-react时加载样式报错求助

解决swagger-ui-react样式加载时postcss-loader的source map错误

问题原因

该错误是由于swagger-ui-react包中的swagger-ui.css文件附带的source map格式不规范,导致postcss-loader在解析时无法处理无效的映射信息,抛出original.line and original.column are not numbers错误。

解决方案

方案1:区分处理项目内与第三方库的CSS

修改webpack.config.js中的CSS规则,让postcss-loader只处理你项目内的CSS文件,跳过node_modules中的第三方CSS:

module.exports = {
  // ...其他配置
  module: {
    rules: [
      {
        test: /\.tsx?$/,
        use: { loader: "ts-loader" },
      },
      // 处理项目自身的CSS,使用postcss-loader
      {
        test: /\.css$/,
        exclude: /node_modules/,
        use: ["style-loader", "css-loader", "postcss-loader"],
      },
      // 处理node_modules中的CSS,跳过postcss-loader
      {
        test: /\.css$/,
        include: /node_modules/,
        use: ["style-loader", "css-loader"],
      },
    ],
  },
  // ...其他配置
};

方案2:关闭postcss-loader的source map功能

如果不需要对CSS生成source map,可以直接关闭postcss-loader的source map相关配置,避免解析无效的映射:

module.exports = {
  // ...其他配置
  module: {
    rules: [
      {
        test: /\.tsx?$/,
        use: { loader: "ts-loader" },
      },
      {
        test: /\.css$/,
        use: [
          "style-loader",
          "css-loader",
          {
            loader: "postcss-loader",
            options: {
              sourceMap: false,
              postcssOptions: {
                map: false,
              },
            },
          },
        ],
      },
    ],
  },
  // ...其他配置
};

方案3:升级postcss-loader版本

尝试将postcss-loader升级到最新版本,新版本可能修复了这类source map兼容性问题:

yarn add postcss-loader@latest --dev

内容的提问来源于stack exchange,提问作者Sergey Shevchenko

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 15:03:15