NextJS 13中如何使用Turbopack处理Node API模块解析问题
在Next.js中用Turbopack替代Webpack处理Node.js API(如fs)的客户端 fallback 配置
当然有对应的Turbopack替代方案,配置逻辑和你用Webpack的思路一致,只是语法略有不同,直接在next.config.js里通过turbopack字段配置即可:
/** @type {import('next').NextConfig} */ const nextConfig = { turbopack: (config, { isServer }) => { if (!isServer) { // 客户端构建时禁用fs模块解析 config.resolve.alias.set('fs', false); } return config; }, }; module.exports = nextConfig;
几点说明:
- Turbopack的配置回调和Webpack的结构类似,同样接收构建配置
config和包含isServer标识的上下文参数,用来区分客户端/服务端构建 - 用
config.resolve.alias.set()替代Webpack的config.resolve.fallback,把fs映射为false,就能让客户端构建时忽略这个Node.js专属模块 - 不管是Pages Router还是App Router(Next.js 13+),这个配置都能正常生效,Turbopack会自动识别不同的构建目标
内容的提问来源于stack exchange,提问作者Taylor Johnson
相关产品推荐
相关产品推荐

