Bueno, regrese en esta lección vamos a seguir trabajando en yo camp, pero no vamos
a agregar nuevas características o funcionalidades.
Vamos a refactorizar el código existente.
Así que he estado hablando de refactorizar las rutas y nuestra aplicación J. S. durante mucho tiempo y se ha
vuelto cada vez más fuera de control y tenemos suficiente código aquí que garantiza la refacturación y
nos enfocaremos en las rutas.
Así que déjame resaltar los diferentes grupos de rutas que tenemos ahora.
Tenemos nuestras rutas de autenticación alrededor de 40 líneas de algo aquí y tenemos rutas de comentarios allí.
Y luego también tenemos nuestras gotas de campamento que van otras 40 o más líneas aquí.
Entonces esos son los tres principales grupos de rutas que tenemos.
Y vamos a dividirlos en tres archivos diferentes y luego requerirlos a todos,
por lo que tendremos que requerir un muelle que tenga el mismo aspecto que las rutas de comentario de var igual a requerido y tendremos los comentarios de una
barra de directorios de ruta.
Entonces, tendremos que hacer que eso funcione.
No funcionará en este momento y haremos lo mismo para el campamento y para nuestras gargantas.
Y esa es solo la primera parte.
Dividir cosas en diferentes archivos y luego voy a mostrarte otra forma en que podemos secar nuestras
rutas aún más y hacer las cosas un poco más limpias usando el enrutador Express.
Llegaremos a eso, pero comenzaré haciendo un directorio de ruta y estoy trabajando dentro de
7 en este momento porque estamos haciendo cambios sustanciales en la estructura de la aplicación y los directorios.
Entonces sería bastante confuso si no hiciera una nueva versión.
Vamos a hacer un directorio llamado para las rutas y luego haremos tres
rutas de archivos diferentes. Slash Campgrounds. Las rutas de EE. UU. Reducen los comentarios hacia nosotros y enruta la barra de ruta y
podemos cancelar esto. J. S. rutas de uso múltiple que no están relacionadas con un modelo en particular.
o podríamos llamarlo índice, que es otro que verá a menudo para las
Y voy a ir con eso por ahora.
Índice Sí.
Así que vamos a abrirlos y si hacemos C9 en un directorio, se abrirán los tres que aparecen.
Y luego podemos simplemente hacer clic en los que queremos.
Entonces ahora tenemos este pequeño subárbol que preferimos.
Comencemos trabajando con los campamentos para abrir eso y voy a copiar todas las rutas de
campamento de aquí.
Así que eso comienza aquí y eso se reduce hasta que nuestro comentario se dirija allí mismo.
Y peguemos eso en los campamentos y no solo va a funcionar automáticamente de la caja.
Tendremos que cambiar algunas cosas.
Pero empecemos por dividir los archivos.
Entonces, voy a trabajar con los comentarios y solo tenemos 2 rutas de comentarios o no.
Así que tomaré los dos que los pongan en este archivo.
Por último, abriremos el índice sí y agregaremos la otra ruta para que tengamos nuestra ruta.
a refabricar por separado, pero eso pertenece a las rutas de autenticación porque allí es donde lo estamos usando.
Y luego, las rutas de autenticación hasta ahora y voy a tomar esto, está conectado junto con nosotros
y lo vamos
Y también es una dependencia de las rutas de comentarios.
Sí, lo estamos usando, también está conectado aquí.
Así que copiemos todo eso.
Entonces, se registra en todas las rutas, incluida la ruta.
Y ahora realmente hemos limpiado el archivo de acceso.
Peguemos eso en el índice sí y guardemos.
Y estamos recibiendo errores por todos lados porque nuestros archivos no saben a qué aplicación se está refiriendo.
Como puede ver, es uno de los problemas con los que se está tropezando.
Pero en realidad no vamos a declarar una aplicación variable como lo haríamos en el pasado donde hacemos que
nuestra aplicación sea igual a Express.
Vamos a hacer algo un poco diferente.
Vamos a usar el enrutador express y la máquina con eso para comenzar.
aquí para Express equals require express y luego vamos a escribir var router igual
a express dot router y luego agregaremos todas las rutas al enrutador en lugar de a la aplicación.
Exigiremos expresivo
Y vamos a hacer esto primero solo para mostrarte y luego explicaré por qué vale la pena hacerlo.
Entonces haremos eso.
Y luego, por supuesto, tenemos que exportar algo de este archivo y todo lo que necesitamos exportar
es enrutador, de modo que el módulo que exporta equivale al enrutador.
Así que creamos esta variable de enrutador igual que en el enrutador de punto expreso básicamente una nueva instancia del
enrutador Express y luego estamos agregando todas las rutas al enrutador que ya no las agrega a la aplicación.
Pero a este enrutador y luego estamos devolviendo o exportando el enrutador al final.
Y esto es campamentos que sí.
Y si voy a mi aplicación, sí, voy a comenzar solicitando todos mis archivos de enrutador.
Así que lo haré por separado de las otras dependencias de las rutas de comentarios
de var y luego tendremos rutas de campamento. Las rutas de Eco requieren rutas de barra diagonal.
Y luego también tenemos Auth. y lo hará a través de iguales y todos se agruparán muy bien.
Es como esto.
Aceptar requiere el mapa de barras diagonales de barra diagonal y podemos llamar a este índice Raf si lo desea.
OK, así que guardaremos eso.
Ahora estamos importando o requiriendo esos tres archivos.
Pero eso no es suficiente para que los usemos todavía.
Hemos solicitado los archivos y, por cierto, solo uno de ellos está exportando algo.
Los comentarios y los índices j s siguen siendo problemáticos.
Pero si volvemos a Apter Sí, necesitamos escribir una aplicación que uso.
Así que voy a hacer esto aquí y les mostraré cómo se ve primero después de usarlo.
Y luego debemos darle el nombre de nuestras rutas que requerimos.
Así que el comentario enruta las rutas de campamento y las rutas de índice.
Entonces haremos eso.
Entonces comenzaremos con las rutas de índice y luego otra actualización usará las rutas de comentario.
Y luego, otra vez, después de que se trata de restos de camping y que dice que podemos usar esos tres archivos
de ruta que hemos requerido en este momento, solo el camping J us realmente se configuró correctamente.
Así que terminemos con los demás comentarios J usamos y cambiaremos todas las aplicaciones dot punto del enrutador CB
y luego en la parte inferior hacemos el módulo que exporta igual a enrutador y guarda pero todavía tenemos
algunos problemas.
Usted puede ver está conectado.
Necesitamos definir que el campamento no está definido.
Y esto también se está quejando de que el campamento no está definido.
Entonces, debemos asegurarnos de que también agreguemos los modelos correctos.
Así que hasta aquí solo haremos otro extremo y no comenzaremos con el camping igual requerido.
Y necesitamos obtener la ruta de archivo correcta.
Así que ahora estamos dentro del directorio de rutas y necesitamos ingresar al campamento de directorio de modelos.
Sí.
modelos dot dot slash slash camping y luego también importaremos comentarios que deben ser comentarios de barra de modelo.
Entonces, tenemos que hacer los
Esos son los dos modelos que
queremos requerir aquí y guardaremos, pero todavía tenemos este problema de que está conectado y para comenzar, solo voy a
copiar el código.
Por lo tanto, está en la parte inferior de este.
Así que copie eso en ambos lugares, así que lo mantendremos en nuestras rutas de índice.
También vamos a agregarlo a nuestra ruta de comentarios y solo ponerlos en la parte inferior por ahora y guardar.
Y ahora que el aire se va y no tenemos aire, podemos entrar en este archivo.
Ahora es dirección nuestro índice J. S. donde hay un poco más de qué preocuparse
porque estamos usando algún otro código que arrojará algunos problemas.
Así que tenemos que comenzar con nuestro código que requiere Express y luego crea
el enrutador Express simplemente cópielo aquí.
Establecer y luego vamos a cambiar todas estas aplicaciones para que el enrutador se enrute las publicaciones
así y guardar.
Tenemos un problema.
Se queja de que el pasaporte no está definido y eso es porque no está definido.
Entonces, todo lo que necesitamos hacer es un pasaporte VAR igual a requerir pasaporte.
Y casi llegamos, pero también tenemos un problema donde el usuario no está definido.
Por lo tanto, necesitamos definir al usuario para que nuestro usuario iguale requiera que los modelos dot dot slash muestren al usuario.
Probablemente lo hayas notado para poder dividir las cosas en archivos separados y mantener
nuestra aplicación limpia y ordenada.
Significa que tenemos que exigir las cosas un poco más a menudo y esa es la única desventaja.
Es un poco más de código para requerir cosas, pero a largo plazo tiene mucho más sentido romper
un código como este.
Mantener las cosas organizadas tiene un cierto orden y estructura en nuestra aplicación y puede significar una o
dos líneas adicionales aquí, pero mantiene su archivo de Applecross corto y agradable.
OK, entonces si intentamos probar esto ahora, tenemos nuestras tres rutas que estamos requiriendo que
todos estos archivos estén ahora configurados donde tienen las dependencias importantes requeridas.
Los modelos expresan un enrutador expreso y luego estamos exportando en la parte inferior de todos ellos, aunque no lo
estamos haciendo en este caso, lo que necesitamos hacer es un índice como módulo pero exportar es igual a enrutador Ahora, si
intentamos iniciar el aplicación
Veamos si obtenemos algún error.
Se ve bien.
Probémoslo.
Entonces, iremos a la ruta raíz para comenzar a trabajar en esa ruta.
Siente los campamentos.
Tenemos un problema aquí es que no definimos el campamento en lugar de la ruta de los campamentos.
Entonces, tenemos que abrir el camping J. S. y solo agrega que nuestro campamento VAR equivale a requerir
que los modelos dot dot slash recorten el campamento tal como lo hicimos en los otros archivos.
Asegúrate de que no haya otros errores aquí.
Se ve bien.
Reinicia el servidor y pruébalo nuevamente.
Ahora tenemos que irnos.
Así que estamos viendo la página del programa.
Volvamos.
Intenta iniciar sesión
Estupendo.
Severus contraseña y todo funciona bien.
Lo cual es genial.
En realidad, fue un cambio mayor que podemos hacer para secar o codificar un poco y tiene que ver con
esta línea. Aquí están estas tres líneas, en realidad, lo que estamos haciendo después de usar las rutas de
indexación de las rutas de campamento y las rutas de comentarios. do es acortar las declaraciones de ruta.
Así que tomemos un ejemplo de rutas de comentarios en común Jay.
Sí.
Slash al final de uno de ellos o en la página de sequía del campamento. Si abro eso, puede ver que todos comienzan
con los campamentos Slash y podemos reducir esa duplicación cuando los solicitemos en nuestra aplicación.
Las dos rutas que todos tenemos empiezan con los campos de campamento ID de barra de corte comentarios Los
campamentos reducen los comentarios de ID de barra y luego tenemos a
Sí.
Así que comencemos con el campamento.
Puedo decir que todas las rutas de los campamentos deberían comenzar con los campamentos Slash y tomaremos todas estas rutas G-S
para acampar que tenemos para encontrar estas rutas aquí y anexar el camping slash en frente de ellos.
Entonces, si vamos a hacer este cambio, entonces tenemos que ir a un archivo JS para acampar y deshacernos de todos
los campamentos de slash.
Entonces el índice ahora para mostrar todos los campamentos es solo barra.
El crear es solo una barra, nuestro nuevo es solo un corte Nuevo nuestro show.
Es solo una ID de barra y eso es todo lo que tenemos.
Así que guardaremos y lo que hace de nuevo es que se necesitan rutas de camping. Todas estas rutas fueron definidas
en ese archivo y agrega campamentos de barra en frente de ellos.
o podemos decir que todos comienzan. con Slash si queremos que todos coincidan con este patrón,
primero proporcionamos la cadena y probémoslo para comenzar la actualización del servidor en la
página de campings, que ahora está funcionando, aunque la ruta misma vaya al campamento.
Por lo tanto, nos ayuda a limpiar el código y podemos hacer lo mismo, aunque para las rutas de índice no hay nada en común que
queremos mantener delante de ellos, así que podemos dejarlo como está
Sí, la ruta del índice es solo barra inclinada.
En realidad, se trata de un slash camping debido a esta línea aquí.
Así que comenta las rutas.
Es un poco más complicado porque todos comienzan con los comentarios de slash campground slash colon slash y luego podemos
ir al comentario de comentario J us rutas y cambiar todo esto para que esto
sea solo una barra nueva.
Y esto es solo barra.
Así que acortamos mucho las rutas y agrupamos las cosas en estas ideas estos temas para que todas las rutas
del campamento comiencen con los campamentos Slash y podamos escribir declaraciones de ruta más cortas.
Y eso es especialmente cierto con los comentarios donde no tenemos que proporcionar este prefijo largo aquí, pero
hay un problema.
Si guardamos, asegúrese de guardar el archivo de comentarios y volver y
reiniciar y actualizar, y vamos a una de las rutas de comentarios, como agregar un nuevo comentario.
Primero vamos a tener que iniciar sesión, por supuesto.
Así que iniciaré sesión en Severus e intentaré eso nuevamente.
Y ahora intento agregar un comentario.
Tenemos un problema y es difícil saber cuál es el problema de este error que siempre es frustrante, pero dice
que no se puede leer el nombre de una propiedad de NULL y que apunta a esta línea aquí.
Nombre de los campamentos.
Entonces, de ese error podemos deducir que el campamento es nulo, lo que significa que no está encontrando nuestro
campamento en la base de datos porque en vez de esta ruta de comentarios cuando creamos un nuevo comentario, lo
primero que hace es buscar un campamento por ID.
Y lo que está sucediendo es que nuestra identificación en realidad no se encuentra.
Entonces, podemos probarlo haciendo un ID de parámetro de solicitud de registro de confianza y no iniciar el servidor.
Y esto funcionó perfectamente hasta que cambiamos esas rutas y usamos este enrutador expreso
como este, donde especificamos que todas las rutas de comentarios comienzan con esto, agregamos la identificación
de Colan, pero si lo probamos, estamos frescos y miramos aquí antes. esta flecha larga se señala que podemos ver que no se imprimió.
Entonces no es encontrar la ID.
Lo que está pasando es que nuestro yo RE. o colon I. RE. El parámetro de ruta no está llegando
a nuestras rutas de comentarios.
Y hay una solución realmente fácil cuando usamos el enrutador express en este archivo que pasamos en una opción en lugar
de un objeto.
Combinar programas.
Cierto.
Y eso fusionará el Páramo del campamento y los comentarios para que dentro de
las rutas de comentarios podamos acceder a este ID de Kolin que definimos.
Entonces, reiniciemos ahora el nodo Aptera Sí.
Si estamos frescos en este momento, tenemos que volver a actualizar los slash campgrounds.
Tendré que volver a iniciar sesión como contraseña de
Severus, vamos a intentar agregar un comentario y verás que funciona bien ahora.
Y estamos encontrando esa identificación y luego estamos encontrando el campamento correcto.
Entonces no tenemos un problema
DE ACUERDO.
Así que hemos rediseñado las rutas con éxito.
Lo último en lo que realmente podríamos enfocarnos es en limpiar otro código para poder entrar en nuestro
archivo de comentarios, por ejemplo.
Y no necesitamos decir rutas de comentarios aquí nunca más.
Pero si queríamos entrar y agregar los puntos y comas también agregamos un pequeño mensaje antes de cada ruta.
Así que estos son los comentarios nuevos y luego se trata de crear comentarios y guardaremos para asegurarse de que todo está formateado muy
bien y deshacernos de eso.
Todavía tenemos esto ha iniciado sesión.
Solo agregaré un mensaje aquí middleware que vamos a refactorizar y mover a su propio archivo que luego
requerirá el archivo de comentarios y nuestro archivo de índice de japes porque lo tenemos en ambos lugares.
Asegurémonos de tener algunos comentarios aquí.
Entonces esta es la ruta de ruta.
Esta es nuestra ruta de formulario de registro que maneja la ruta lógica de registro.
Esta es nuestra ruta de registro y forma.
Esto maneja la lógica de registro y formularios y en realidad realiza el inicio de sesión.
Y esta es la ruta de cierre de sesión.
Y luego tenemos nuestro middleware aquí.
Todo bien.
Y luego, por último, ve al campamento.
Sí, tenemos nuestra ruta de índice.
Nuestra ruta de creación y nuestra nueva ruta y nuestro espectáculo.
Estupendo.
Y en realidad sí, veamos si hay algo más que podamos limpiar aquí.
Avancemos y agreguemos un comentario aquí.
¿Estamos en lo correcto al requerir rutas y de otra manera para que todo vaya bien?
Así que cambiamos muchas cosas en cuanto a los archivos y los directorios, pero nuestra lógica es
exactamente la misma.
Realmente el mayor cambio aparte de mover cosas a diferentes archivos fue mostrar este uso del
enrutador Express donde podemos requerir archivos de ruta y en nuestro caso nuestros archivos de ruta están exportando el enrutador que estamos usando
y que no tiene que ser llamado enrutador pero ese es el nombre convencional.
Entonces, sea lo que sea que hayamos nombrado aquí, solo necesitamos hacer referencia a un anuncio que Didcot obtiene y
publica en ese objeto y luego enviarlo en la parte inferior y podemos proporcionar este prefijo que se agregará delante
de cada ruta en ese archivo.
Estupendo.
realmente limpiamos las cosas solo para mostrarle cuánto tenemos 46 líneas en esta aplicación en la versión anterior.
Así que
Si abrimos SJS teníamos 177 líneas.
Entonces esa es una reducción bastante drástica.