NextJS 15.0.2编译失败求助:_0_0.call$1 is not a function错误
Next.js 15.0.2生产构建报错
_0_0.call$1 is not a function的解决方案 排查SCSS模块语法问题
先检查file.module.scss里的嵌套规则、mixin调用、自定义函数,Next.js 15的Sass编译链可能对旧语法更敏感。比如有没有用了废弃的Sass函数,或者@include时参数传递错误。可以尝试注释掉部分代码块,逐步定位到引发错误的样式代码。锁定适配的Sass版本
即使更新了所有依赖,最新版Sass可能和Next.js 15.0.2存在兼容问题。试试安装指定版本的Sass:npm install sass@1.77.8 --save-dev安装完成后删除
node_modules和.next目录,重新执行生产构建。检查TSX中SCSS模块的使用
确认file.tsx里的SCSS导入方式正确:import styles from './file.module.scss';避免把样式类名当作函数调用,比如错误写法
styles.someClass(),应该是styles.someClass。临时切换到sass-loader编译
Next.js 15默认用SWC编译Sass,可能存在bug。可以在next.config.js中配置改用sass-loader:/** @type {import('next').NextConfig} */ const nextConfig = { sassOptions: { implementation: require('sass'), }, webpack: (config) => { config.module.rules.forEach(rule => { if (rule.test?.test('.scss') || rule.test?.test('.sass')) { rule.use = rule.use?.map(useItem => { if (useItem.loader?.includes('swc-loader')) { return { loader: 'sass-loader', options: { implementation: require('sass') } }; } return useItem; }); } }); return config; }, }; export default nextConfig;配置后重新构建,若问题解决,说明是SWC编译的问题,可以暂时用这个方案,等待Next.js官方修复。
关闭实验性特性
如果项目开启了Next.js的实验性App Router特性,尝试关闭这些特性再构建,排查是否是特性冲突导致的编译错误。
内容的提问来源于stack exchange,提问作者Sandra
相关产品推荐
相关产品推荐

