Obteniendo el tag con GetElementById en vez de current script.#3
Obteniendo el tag con GetElementById en vez de current script.#3cesar128 wants to merge 1 commit intoogticrd:masterfrom
Conversation
|
@akevinieron tiranos un cable aquí porfa. |
|
Hola @cesar128, muchas gracias por este PR. Tengo una duda, cuál es la razón por la que estás proponiendo este cambio? |
Claro @akevinieron , Lo que pasa es que, las ultimas webs que hemos desarrollado en el Lab por lo menos, utilizamos Vue + Vite, al parecer Vue carga los componentes de manera asincrona y segun lo que pude leer en diversas paginas, al ejecutar los scripts de manera asincrona el document.currentScript no carga correctamente, es nulo. Y esto, segun el codigo anterior se utiliza para obtener informacion del tema, por lo que si es nulo, el va a poner el tema por defecto en light. Ejemplo con el código como está: Ejemplo con el codigo modificado: Otras personas que le pasa algo similar: Side note: |
|
@akevinieron @plusiv Algun update? |
|
Hola @cesar128, este script es utilizado por todo el Estado, no podemos hacer un cambio tan drástico sin antes hacer pruebas exhaustivas. Propongo buscar una solución menos agresiva, posiblemente asignarle valor al currentScript cuando venga null y que el resto de la implementación siga intacta. Creo que esto disminuiría el riesgo de fallos en los clientes que lo usan actualmente. Si te surge alguna otra idea en esta misma linea "safe", siente libre de proponerla. Lo ideal es que se haga lo necesario para que este script pueda funcionar en Vue, tal como en su momento se hizo con React. |
|
Hola @cesar128, algún comentario al respecto? |

En algunos casos, la web no carga las propiedades (como theme) porque document.currentScript es nulo.

Lo que hice fue, cambiar el document.currentScript por un document.getElementById y asignarle el id tambien al tag de script.
Tambien fue actualizada la documentacion para aplicar los cambios necesarios.