Capítulo 296 de 456
Next.js já inclui o preset next/babel (necessário pra compilar React + código server-side); pra estender a config de Babel padrão, crie .babelrc/babel.config.js incluindo esse preset como base.
next/babel: preset padrão do Next.js; se você criar um .babelrc, ele vira a fonte de verdade e precisa reincluir next/babel explicitamente.plugins/presets no .babelrc.next/babel: passar objeto de config como segundo item do array ["next/babel", { ... }], com chaves como preset-env, transform-runtime, styled-jsx, class-properties.{
"presets": [
[
"next/babel",
{
"preset-env": {},
"transform-runtime": {},
"styled-jsx": {},
"class-properties": {}
}
]
],
"plugins": []
}
next/babel sem perder o comportamento padrão.modules: true (ou remover false) em preset-env: desliga o code splitting do webpack; a opção modules deve ficar false..babelrc sem incluir next/babel: perde as transformações necessárias pro Next.js compilar corretamente..babelrc/babel.config.js na raiz vira fonte de verdade total, sempre reinclua next/babel.next/babel.modules no preset-env, isso quebra code splitting.