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

Next.js问题:已配置exportPathMap却提示未找到的排查求助

问题根源:多次覆盖 module.exports 导致配置丢失

你遇到的核心问题是连续三次给 module.exports 赋值,后面的语句直接覆盖了前面的配置。具体来说:

  1. 你第一次定义了带 exportPathMap 的配置对象
  2. 第二次用 withCss({...}) 完全替换了 module.exports
  3. 第三次又用 withSass(withTM({...})) 再次替换了 module.exports

最终只有最后一次的配置生效,前面的 exportPathMap 被彻底覆盖,所以 Next.js 找不到这个配置项,才会抛出那个错误。

解决方案:合并所有配置到链式调用中

Next.js 的插件(withCss、withSass、withTM)都是接受配置对象并返回增强版配置的函数,你需要把它们链式包裹,同时把所有配置项(包括 exportPathMap)统一放到最内层的配置对象里。修改后的 next.config.js 应该是这样:

const withCss = require("@zeit/next-css");
const withSass = require("@zeit/next-sass");
const withTM = require("next-transpile-modules");

module.exports = withSass(
  withTM(
    withCss({
      // withCss 的配置
      cssModules: true,
      // withTM 的配置
      transpileModules: ["react-bulma-components"],
      // withSass 的配置
      sassLoaderOptions: { includePaths: ["./components"] },
      // 你的 exportPathMap 配置
      exportPathMap: async function(
        defaultPathMap, { dev, dir, outDir, distDir, buildId }
      ) {
        return {
          "/": { page: "/" },
          "/menu": { page: "/menu" },
          "/about": { page: "/about" }
        };
      }
    })
  )
);
为什么这样可行?

每个插件函数都会接收配置对象并返回包含插件逻辑的新配置,链式调用可以让所有插件的逻辑叠加生效,同时所有自定义配置(包括 exportPathMap)都能被完整保留,不会被覆盖。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 09:14:18