Fix Boostrap y Try Cache
This commit is contained in:
		| @@ -63,33 +63,30 @@ if (import.meta.env.DEV) { | ||||
| } else { | ||||
|     // --- MODO PRODUCCIÓN --- | ||||
|     // Exponemos la función de renderizado para el bootstrap.js | ||||
|     const renderWidgets = () => {         | ||||
|         const widgetContainers = document.querySelectorAll('[data-elecciones-widget]'); | ||||
|  | ||||
|         if (widgetContainers.length === 0) { | ||||
|             console.warn('React: ADVERTENCIA - No se encontró ningún elemento en el DOM para renderizar un widget. Verifica que el HTML contenga <div data-elecciones-widget="...">.'); | ||||
|         } | ||||
|  | ||||
|         widgetContainers.forEach(container => { | ||||
|             const widgetName = (container as HTMLElement).dataset.eleccionesWidget; | ||||
|     // La función de renderizado acepta el contenedor y las props | ||||
|     const renderWidgets = (container: HTMLElement, props: DOMStringMap) => { | ||||
|         const widgetName = props.eleccionesWidget; | ||||
|          | ||||
|         if (widgetName && WIDGET_MAP[widgetName]) { | ||||
|             const WidgetComponent = WIDGET_MAP[widgetName]; | ||||
|             const root = ReactDOM.createRoot(container); | ||||
|              | ||||
|             if (widgetName && WIDGET_MAP[widgetName]) { | ||||
|                 const WidgetComponent = WIDGET_MAP[widgetName]; | ||||
|                 const root = ReactDOM.createRoot(container); | ||||
|                 root.render( | ||||
|                     <React.StrictMode> | ||||
|                         <QueryClientProvider client={queryClient}> | ||||
|                             <WidgetComponent /> | ||||
|                         </QueryClientProvider> | ||||
|                     </React.StrictMode> | ||||
|                 ); | ||||
|             } else { | ||||
|                  console.error(`React: ERROR - No se encontró un componente para el nombre de widget: "${widgetName}"`); | ||||
|             } | ||||
|         }); | ||||
|             // Pasamos todas las props (ej. { eleccionesWidget: '...', focoMunicipio: '...' }) | ||||
|             // al componente que se va a renderizar. | ||||
|             root.render( | ||||
|                 <React.StrictMode> | ||||
|                     <QueryClientProvider client={queryClient}> | ||||
|                         <WidgetComponent {...props} /> | ||||
|                     </QueryClientProvider> | ||||
|                 </React.StrictMode> | ||||
|             ); | ||||
|         } else { | ||||
|              console.error(`React: ERROR - No se encontró un componente para el nombre de widget: "${widgetName}"`); | ||||
|         } | ||||
|     }; | ||||
|  | ||||
|     // La función expuesta ahora se llamará por cada widget, no una sola vez. | ||||
|     (window as any).EleccionesWidgets = { | ||||
|         render: renderWidgets | ||||
|         render: renderWidgets  | ||||
|     }; | ||||
| } | ||||
		Reference in New Issue
	
	Block a user