¿Cómo puedo acceder a los parámetros de URL en JavaScript cargados asincrónicamente por necesidad.js?

StackOverflow https://stackoverflow.com/questions/8363646

Pregunta

Estoy usando requiradores para cargar los módulos en mi aplicación. Necesito pasar un parámetro URL que obtengo en index.php al módulo principal. Hay un par de maneras en que puedo ver hacer esto, pero preferiría si lo único en el índice todavía era esencialmente esto:

<script type="text/javascript" data-main="scripts/main" src ="scripts/require-jquery.js"></script>

Porque requeríajs dice que es mejor para la optimización. Mi solución actual es poner la llamada requerida de origen en el archivo de índice y usar el parámetro URL desde allí. ¿Hay una mejor manera?

Como referencia, estoy usando PHP en el lado del servidor, si es que eso ayuda.

¿Fue útil?

Solución

Para pasar el parámetro de llegar a su script, tiene tres opciones:

Uso de $ _Session para almacenar el valor y editar dinámicamente el archivo JS principal.Esto dará como resultado una sobrecarga ridículamente grande y agregará mucha complicidad innecesaria (más complicidad => más errores)

Agregar este código http://www.onlineaspect.com/2009/06/10/reading-get-variables-with-javascript/ a tu módulo principal Para recuperar el parámetro a través de Javscript.

Genere un pequeño script Java con php (usando $ _get) para establecer el valor. Que teóricamente es más rápido que las otras opciones.

No debería haber una diferencia significativa en la velocidad entre las opciones 2 y 3, así que elige qué coincide con sus necesidades.

Si el módulo principal es un componente de terceros que a menudo se actualiza, elegiría la tercera opción porque no tiene que cambiar el módulo principal cada vez que extraiga una nueva versión.

Si desea establecer un valor predeterminado basado en el usuario, debe quedarse con la Opción 3 para tener un acceso más fácil a la base de datos y la configuración del usuario.

Espero que esto ayude.

Editar: si su módulo principal no requiere el parámetro antes de que se carguen todos los scrips, puede usar el script de la opción 2 en un módulo adicional que establece el valor en su módulo principal. Esto también resolvería el problema de actualización.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top