使用 next-intel 和 not-found.tsx 使用 NX 构建错误

问题描述 投票:0回答:1

我有这个单一仓库设置,使用 NX。我的其中一个 nextjs 应用程序无法构建,并不断抱怨 _not-found.tsx 文件,并且错误似乎来自

next-intl
。我的应用程序正在开发环境中编译并运行,但它在生产构建中不断失败。

这是我遇到的错误。

nx run <project-name>:build:production

- info Loaded env from C:\Users\saniraa\Documents\iprox.open\applications\apps\iprox.open.portal\.env.production.local
- info Creating an optimized production build...
- info Using tsconfig file: ./tsconfig.prod.json
- info Compiled successfully
- info Skipping linting
- info Checking validity of types...
- info Collecting page data...
- info Generating static pages (0/3)
Error: Usage of next-intl APIs in Server Components is currently only available for dynamic rendering (i.e. no `generateStaticParams`).
Support for static rendering is under consideration, please refer to the roadmap: https://next-intl-docs.vercel.app/docs/getting-started/app-router-server-components#roadmap
    at C:\Users\saniraa\Documents\iprox.open\applications\dist\apps\iprox.open.portal\.next\server\chunks\249.js:29896:19
    at C:\Users\saniraa\Documents\iprox.open\applications\dist\apps\iprox.open.portal\.next\server\chunks\249.js:32365:23
    ... 5 lines matching cause stack trace ...
    at async C:\Users\saniraa\Documents\iprox.open\applications\node_modules\next\dist\server\app-render\app-render.js:860:60 {
  [cause]: DynamicServerError: Dynamic server usage: headers
      at staticGenerationBailout (C:\Users\saniraa\Documents\iprox.open\applications\dist\apps\iprox.open.portal\.next\server\chunks\249.js:30425:21)
      at headers (C:\Users\saniraa\Documents\iprox.open\applications\dist\apps\iprox.open.portal\.next\server\chunks\249.js:30245:62)
      at C:\Users\saniraa\Documents\iprox.open\applications\dist\apps\iprox.open.portal\.next\server\chunks\249.js:29888:51
      at C:\Users\saniraa\Documents\iprox.open\applications\dist\apps\iprox.open.portal\.next\server\chunks\249.js:32365:23
      at useLocale (C:\Users\saniraa\Documents\iprox.open\applications\dist\apps\iprox.open.portal\.next\server\chunks\249.js:29914:12)       
      at RootLayout (C:\Users\saniraa\Documents\iprox.open\applications\dist\apps\iprox.open.portal\.next\server\chunks\480.js:2822:48)       
      at preloadComponent (C:\Users\saniraa\Documents\iprox.open\applications\node_modules\next\dist\server\app-render\preload-component.js:23:22)
      at C:\Users\saniraa\Documents\iprox.open\applications\node_modules\next\dist\server\app-render\app-render.js:626:101
      at async createComponentTree (C:\Users\saniraa\Documents\iprox.open\applications\node_modules\next\dist\server\app-render\app-render.js:626:29)
      at async C:\Users\saniraa\Documents\iprox.open\applications\node_modules\next\dist\server\app-render\app-render.js:860:60 {
    digest: 'DYNAMIC_SERVER_USAGE'
  }
}
Error occurred prerendering page "/_not-found". Read more: https://nextjs.org/docs/messages/prerender-error
Error: Usage of next-intl APIs in Server Components is currently only available for dynamic rendering (i.e. no `generateStaticParams`).       
Support for static rendering is under consideration, please refer to the roadmap: https://next-intl-docs.vercel.app/docs/getting-started/app-router-server-components#roadmap
    at C:\Users\saniraa\Documents\iprox.open\applications\dist\apps\iprox.open.portal\.next\server\chunks\249.js:29896:19
    at C:\Users\saniraa\Documents\iprox.open\applications\dist\apps\iprox.open.portal\.next\server\chunks\249.js:32365:23
    at useLocale (C:\Users\saniraa\Documents\iprox.open\applications\dist\apps\iprox.open.portal\.next\server\chunks\249.js:29914:12)
    at RootLayout (C:\Users\saniraa\Documents\iprox.open\applications\dist\apps\iprox.open.portal\.next\server\chunks\480.js:2822:48)
    at preloadComponent (C:\Users\saniraa\Documents\iprox.open\applications\node_modules\next\dist\server\app-render\preload-component.js:23:22)
    at C:\Users\saniraa\Documents\iprox.open\applications\node_modules\next\dist\server\app-render\app-render.js:626:101
    at async createComponentTree (C:\Users\saniraa\Documents\iprox.open\applications\node_modules\next\dist\server\app-render\app-render.js:626:29)
    at async C:\Users\saniraa\Documents\iprox.open\applications\node_modules\next\dist\server\app-render\app-render.js:860:60
- info Generating static pages (3/3)
> Export encountered errors on following paths:
        /_not-found
Error occurred while trying to run the build command
1

这是我的 nextjs 应用程序中的文件夹结构。

我正在使用

next-intl v-3.0.0-beta.5
nextjs v-13.4.12
react v-18.2.0

请注意,如果我将

not-found.tsx
变成
_not-found.tsx
那么构建正在运行,但预期的行为(回退到未找到的页面)下一个不会发生。任何洞察力在这里都会很好,而且,我在当前的实现中也注意到了一件奇怪的事情,如果应用程序遇到未知的路线,它将正确回退到
not-found
页面,但它似乎一直在尝试获取给出的数据我
404
在网络选项卡中,获取调用也保持运行。 (奇怪..!).

reactjs next.js production-environment next-intl
1个回答
0
投票

我有完全相同的问题。你整理好了吗?

© www.soinside.com 2019 - 2024. All rights reserved.