Desarrollo de Component
En NocoBase, el componente de página montado en una ruta es un componente React común. Puede escribirlo directamente con React + Antd sin diferencia respecto al desarrollo frontend habitual.
NocoBase aporta además:
observable+observer: la forma recomendada de gestionar estado, más adecuada para el ecosistema de NocoBase queuseState.useFlowContext(): acceso a las capacidades del contexto de NocoBase (peticiones, internacionalización, navegación de rutas, etc.).
Estructura básica
El componente de página más sencillo:
Una vez escrito, regístrelo en el load() del plugin con this.router.add(). Para más detalles, consulte Router.
Gestión de estado: observable
NocoBase recomienda gestionar el estado con observable + observer en lugar del useState de React. Sus ventajas son:
- Modificar directamente las propiedades del objeto desencadena la actualización; no hace falta
setState. - Recolección automática de dependencias: el componente solo se vuelve a renderizar cuando cambian las propiedades realmente usadas.
- Coherente con el mecanismo reactivo subyacente de NocoBase (FlowModel, FlowContext, etc.).
Uso básico: cree el objeto reactivo con observable.deep() y envuelva el componente con observer(). Tanto observable como observer se importan desde @nocobase/flow-engine:
Vista previa:
Para más detalles, consulte Mecanismo reactivo Observable.
Uso de useFlowContext
useFlowContext() es el punto de entrada a las capacidades de NocoBase. Se importa desde @nocobase/flow-engine y devuelve un objeto ctx:
A continuación se muestran ejemplos de las capacidades más comunes.
Peticiones
Llame al backend con ctx.api.request(). Su uso es idéntico al de Axios:
Internacionalización
Obtenga textos traducidos con ctx.t():
Navegación de rutas
Use ctx.router.navigate() para navegar a otra página:
Obtenga los parámetros de la ruta actual:
Obtenga el nombre de la ruta actual:
Para más niveles de log y usos, consulte Context → Capacidades comunes.
Ejemplo completo
Combinando observable, useFlowContext y Antd, un componente de página que carga datos del backend y los muestra:
A continuación
- Capacidades completas que ofrece
useFlowContext: consulte Context. - Estilo y personalización del tema de los componentes: consulte Styles & Themes.
- Si su componente necesita aparecer en los menús "Añadir bloque / campo / acción" de NocoBase y admitir configuración visual, debe envolverlo con FlowModel: consulte FlowEngine.
- ¿No sabe si usar Component o FlowModel? Consulte Component vs FlowModel.
Enlaces relacionados
- Router: registrar rutas de páginas y montar componentes en una URL.
- Context: introducción completa a las capacidades de
useFlowContext. - Styles & Themes:
createStyles, theme tokens, etc. - FlowEngine: use FlowModel cuando necesite configuración visual.
- Mecanismo reactivo Observable: gestión reactiva del estado en FlowEngine.
- Context → Capacidades comunes:
ctx.api,ctx.ty otras capacidades integradas. - Component vs FlowModel: cómo elegir entre componente y FlowModel.

