Recientemente, estoy pensando en cómo fusionar archivos JS front-end. Por supuesto, no incluye archivos que no se pueden fusionar, sino archivos que podemos fusionar. Después de pensarlo, solo debería haber tres formas.
Los tres métodos son los siguientes:
1. Un archivo grande, todos los JS se fusionan en un archivo grande, y todas las páginas se refieren a él.
2. Cada página es un archivo grande, y cada página se fusiona para generar el archivo grande de su propio JS.
3. Fusionar múltiples archivos grandes compartidos, fusionar múltiples archivos JS compartidos según la práctica, y cada página se refiere a múltiples archivos grandes compartidos.
Además, en mi opinión, Merge tiene dos propósitos:
1. Para reducir el número de solicitudes.
2. Consideraciones de seguridad del código (cuantos más archivos se dividan, más fácil será ver claramente).
PD: Tenga en cuenta que de lo que estoy hablando no es confusión de compresión, solo se fusiona
1. Un archivo grande
De esta manera, es fusionar todos los JS en un archivo grande independientemente de la situación, y todas las páginas se refieren a él, incluso si se puede usar algún código.
ventaja:
(1). Es fácil de fusionar y fácil de usar.
(2). Otras páginas se pueden cargar utilizando la optimización de caché.
defecto:
(1). La página se puede cargar en códigos que no se usan en esta página.
Escenarios no aplicables:
(1). Este método definitivamente no es adecuado para grandes aplicaciones web, e independientemente de la cantidad de código de un solo archivo, la complejidad del negocio no nos permite hacer esto (nunca he visto que ese sitio web haga esto).
Escenarios aplicables:
(1). Las aplicaciones híbridas, ya sean aplicaciones híbridas de Mobile o aplicaciones híbridas de PC (aplicaciones de escritorio, similares a la marco de desarrollo del equipo de Yodao Hex+Chromium+NodeJS), son muy adecuadas y no habrá problemas de velocidad de solicitud. La seguridad del código de tales aplicaciones ubicadas en el código del cliente es más importante.
PD: Por supuesto, lo más importante es la seguridad del backend. Independientemente de si el interfaz está agrietado, si el backend mejora la verificación de la entrada y si evita la extralimitación de la autoridad, el backend es la clave, lo que significa que el dicho "no confía en ninguna entrada del usuario".
2. Archivos grandes en cada página
Fusione cada página para generar un archivo grande de su propio JS y generar múltiples fusiones JS.
ventaja:
(1). Cada página utiliza el JS más preciso y no habrá un código irrelevante.
defecto:
(1). Hay muchas páginas, se generarán múltiples JS, lo que resulta en una gran cantidad de redundancia en el código JS común.
(2). La parte compartida no se puede cargar utilizando la optimización de caché.
(3). Fusionar y usar será relativamente complicado.
Siempre pienso que algo está mal con este método. Las aplicaciones pequeñas pueden manejarlo directamente con un archivo grande, y las aplicaciones grandes no lo harán, y no pueden usarse en aplicaciones híbridas. En este caso, donde el tamaño del paquete de instalación es importante, el código redundante no se puede tolerar. Cuando estaba pensando en varios escenarios, descubrí que podría resolverse utilizando los métodos anteriores o inferiores, y era mejor, así que creo que este método es inútil.
3. Fusionar múltiples archivos grandes compartidos
Según la práctica, fusione múltiples archivos grandes compartidos (como la clasificación de la biblioteca de dependencia) y fusione los archivos JS requeridos (como la clasificación ejecutiva), cada página se refiere a uno o más archivos grandes compartidos y los archivos JS de esta página.
ventaja:
(1). La parte compartida se carga y las referencias a cada página son lo más altas posible sin redundancia.
defecto:
(1). Habrá más o menos ciertas páginas que harán referencia al código no deseado, y compartir no es un intercambio completo.
Escenarios aplicables:
(1). Las aplicaciones grandes y pequeñas son más adecuadas. Cada página puede tener muchas partes comunes, y la fusión razonable de archivos será muy crítica.
Resumir
Este documento es solo un pensamiento y es solo una discusión general. Existen muchos métodos para la fusión de archivos, que se generan dinámicamente por el backend o se generan directamente por las herramientas (Grunt+Requestjs). Los tres métodos de fusión anteriores también están determinados por nuestras necesidades prácticas.
La fusión es muy importante, pero no se recomienda fusionar todos los documentos. Algunos documentos no se pueden fusionar. Algunos son mejores para documentos individuales, pero depende del escenario específico.
Las tres formas anteriores de fusionar el archivo JS front-end son todo el contenido que comparto con usted. Espero que pueda darle una referencia y espero que pueda apoyar más a Wulin.com.