serverComponentsExternalPackages
在服务端组件 (Server Components) 和路由处理器 (Route Handlers) 中使用的依赖项会被 Next.js 自动打包。
如果某个依赖项使用了 Node.js 特有的功能,您可以选择将其从服务端组件打包中排除,转而使用原生 Node.js require。
/** @type {import('next').NextConfig} */
const nextConfig = {
experimental: {
serverComponentsExternalPackages: ['@acme/ui'],
},
}
module.exports = nextConfigNext.js 包含了一份常用包的简短列表,这些包目前正在进行兼容性适配并已自动排除:
@aws-sdk/client-s3@aws-sdk/s3-presigned-post@blockfrost/blockfrost-js@highlight-run/node@jpg-store/lucid-cardano@libsql/client@mikro-orm/core@mikro-orm/knex@prisma/client@react-pdf/renderer@sentry/profiling-node@swc/coreargon2autoprefixeraws-crtbcryptbetter-sqlite3canvascpu-featurescypresseslintexpressfirebase-adminjestjsdomlibsqlmdx-bundlermongodbmongoosenext-mdx-remotenext-seonode-ptynode-web-audio-apipgplaywrightpostcssprettierprismapuppeteer-corepuppeteerrimrafsharpshikisqlite3tailwindcssts-nodetypescriptvscode-onigurumawebpackwebsocketzeromq