Next.js: Mover páginas/_component.js a componentes/Component.js

Creado en 17 mar. 2017  ·  3Comentarios  ·  Fuente: vercel/next.js

  • pages/_document.js > components/Document.js
  • pages/_error.js > components/Error.js

Ninguno de los anteriores son _páginas_ —son _componentes_ especiales. Dado que todos adoptan la convención de tener una carpeta components junto con pages , sería mucho mejor y "más correcto" en mi opinión moverlos aquí y documentar que estos son nombres de componentes _reservados_ que se usan por Siguiente.

Creo que esto es más ordenado y simplificará la lógica de división y agrupación de código, ya que puede leer _todos_ los archivos JS en pages y no tener que filtrar estos casos especiales. También erradicaría el archivo llamado guión bajo ligeramente feo... ¡aunque esa es solo mi opinión!

Comentario más útil

Habiendo leído este PR https://github.com/zeit/next.js/pull/936 , esta propuesta también podría abordarse en el objeto next.config.js tal como lo ha sido pagesDirectory .

Podrías pasar otro par de accesorios como documentComponent y errorComponent :

// next.config.js
module.exports = {
  pagesDirectory: 'views',
  documentComponent: 'components/Document.js',
  errorComponent: 'components/Error.js'
}

Todos 3 comentarios

Gracias. Tienes un punto válido.
Pero a corto plazo, no lo vamos a cambiar.

Con el lanzamiento 2.0.0 pronto, pensé que podría ser una buena oportunidad para introducir un cambio importante como este. ¿No podría proporcionar soporte para ambas opciones y registrar una advertencia para aquellos que usan pages/_document.js y pages/_error.js , aconsejándoles que muevan y cambien el nombre de sus archivos? De esa manera no rompería nada pero permitiría a la gente migrar.

Habiendo leído este PR https://github.com/zeit/next.js/pull/936 , esta propuesta también podría abordarse en el objeto next.config.js tal como lo ha sido pagesDirectory .

Podrías pasar otro par de accesorios como documentComponent y errorComponent :

// next.config.js
module.exports = {
  pagesDirectory: 'views',
  documentComponent: 'components/Document.js',
  errorComponent: 'components/Error.js'
}
¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

nhanco picture nhanco  ·  3Comentarios

swrdfish picture swrdfish  ·  3Comentarios

havefive picture havefive  ·  3Comentarios

kenji4569 picture kenji4569  ·  3Comentarios

flybayer picture flybayer  ·  3Comentarios