inegicomponente
Version:
Componentes de visualizacion 2023 - Graficas
40 lines (38 loc) • 1.62 kB
JavaScript
/**
* Puente entre el llamado desde JS -> Componente Reactjs (Interfaz)
* *Descripcion:Namespaces encargado de seleccionar el tipo de componente a ejecutar
* Patron de diseño: Singleton
* Creado:22/11/2023
*/
import React from "react";
import { createRoot } from "react-dom/client";
import Main from "./Componentes/Main";
window.INEGIComponentes || (window.INEGIComponentes = {});
window.INEGIComponentes = {
NombreComponente: function (params, dataset){
let ck = INEGIComponentes._private.checkParams(params);
if(ck){
if(params.exe == undefined || params.exe === true){
const container = document.getElementById(params.id);
const root = createRoot(container);
root.render(<Main key={"sd-"+params.id} config={params}/>);
}
}
},
_private:{
checkParams:function(params){
if (params !== undefined) {
if (params.id && params.id !== "") {
return true;
} else {
console.warn(params);
console.error("No se encontro el id del elemento html.");
return false;
}
} else {
console.error("No se encuentran los parámetros.");
return false;
}
}
}
}