es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Implementación de transferencia de estado de Spartacus

Instalé SSR en la aplicación Spartacus con el comando de esquemas y ejecuté la aplicación en modo SSR.

En las herramientas de desarrollo de Chrome, puedo ver que el contenido de mi página de inicio fue generado correctamente por el servidor SSR.

Sin embargo, puedo ver en la pestaña de red que las solicitudes XHR siguen siendo enviadas y los datos se obtienen mediante llamadas http en lugar de usar los datos obtenidos por express.

Intenté usar la configuración de https://sap.github.io/spartacus-docs/ssr-transfer-state/#page-title en los proveedores de mi archivo app.module.ts con provideConfig (también lo intenté con Config.Module.withConfig en los imports de app.module.ts), pero no funcionó, ya que las solicitudes de CMS y productos aún se enviaban desde el cliente.

Al final de mi HTML renderizado, puedo ver que los datos de estado están vinculados al formato clave-valor en una etiqueta de script:

<script id="spartacus-state" type="application/json">...</script>

Me pregunto si es posible utilizar esos datos desde la plantilla HTML en el lado del cliente y no volver a obtenerlos mediante llamadas HTTP (implementando Angular Universal transfer state en la aplicación Spartacus).

Agradecería mucho cualquier consejo sobre el enfoque correcto (sobrescribir adaptadores o resolutores u otra solución) para implementar la transferencia de estado en la aplicación Spartacus.

Gracias.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Usando el estado de transferencia de Angular Universal en la aplicación Spartacus

    Después de instalar SSR en la aplicación Spartacus con el comando de esquemas y ejecutar la aplicación en modo SSR, se puede ver la página de inicio generada correctamente por el servidor SSR en las herramientas de desarrollo de Chrome. Sin embargo, aún se envían solicitudes XHR y se obtienen datos mediante llamadas http en lugar de utilizar los datos obtenidos por Express.

    Para evitar esto, se puede utilizar la configuración de https://sap.github.io/spartacus-docs/ssr-transfer-state/#page-title en app.module.ts proveedores con provideConfig. También se pueden probar las importaciones de Config.Module.withConfig en app.module.ts. Sin embargo, si estas soluciones no funcionan y las solicitudes de CMS y productos aún se envían desde el cliente, se puede utilizar los datos de estado vinculados en formato de clave-valor a la etiqueta de script al final del HTML renderizado en la plantilla HTML en el lado del cliente.

    Para implementar el estado de transferencia de Angular Universal en la aplicación Spartacus, se pueden sobrescribir adaptadores o resolutores. También se puede utilizar cualquier otra solución para la implementación de transferencia de estado en la aplicación Spartacus.

Comments are closed.