pages/_document.js > components/Document.js
pages/_error.js > components/Error.js
Nenhum dos itens acima são _pages_ — eles são _components_ especiais. Como todos adotam a convenção de ter uma pasta components
ao lado pages
, seria muito melhor e "mais correto" IMO movê-los aqui e documentar que esses são nomes de componentes _reservados_ que são usados por Próximo.
Eu acho que isso é mais simples e simplificará sua lógica de divisão e agrupamento de código, já que você pode ler _all_ arquivos JS em pages
e não precisa filtrar esses casos especiais. Também erradicaria o arquivo nomeado de sublinhado um pouco feio ... essa é apenas a minha opinião!
Obrigado. Você tem um ponto válido.
Mas, a curto prazo, não vamos mudá-lo.
Com 2.0.0
sendo lançado em breve, pensei que poderia ser uma boa oportunidade para introduzir uma mudança inovadora como essa. Você não poderia fornecer suporte para ambas as opções e registrar um aviso para aqueles que usam pages/_document.js
e pages/_error.js
, aconselhando-os a mover e renomear seus arquivos? Dessa forma, não quebraria nada, mas permitiria que as pessoas migrassem.
Tendo acabado de ler este PR https://github.com/zeit/next.js/pull/936 , esta proposta também poderia ser abordada no objeto next.config.js
assim como pagesDirectory
.
Você pode passar outros adereços como documentComponent
e errorComponent
:
// next.config.js
module.exports = {
pagesDirectory: 'views',
documentComponent: 'components/Document.js',
errorComponent: 'components/Error.js'
}
Comentários muito úteis
Tendo acabado de ler este PR https://github.com/zeit/next.js/pull/936 , esta proposta também poderia ser abordada no objeto
next.config.js
assim comopagesDirectory
.Você pode passar outros adereços como
documentComponent
eerrorComponent
: