Esta documentación ha sido traducida automáticamente por IA.
Eventos
El servidor de NocoBase desencadena eventos correspondientes durante el ciclo de vida de la aplicación, el ciclo de vida de los plugins y las operaciones de la base de datos. Los desarrolladores de plugins pueden escuchar estos eventos para implementar lógica de extensión, operaciones automatizadas o comportamientos personalizados.
El sistema de eventos de NocoBase se divide principalmente en dos niveles:
app.on()- Eventos a nivel de aplicación: Permite escuchar los eventos del ciclo de vida de la aplicación, como el inicio, la instalación o la habilitación de plugins.db.on()- Eventos a nivel de base de datos: Permite escuchar los eventos de operación a nivel del modelo de datos, como la creación, actualización o eliminación de registros.
Ambos heredan de EventEmitter de Node.js y admiten las interfaces estándar .on(), .off() y .emit(). NocoBase también extiende el soporte para emitAsync, que se utiliza para desencadenar eventos de forma asíncrona y esperar a que todos los oyentes finalicen su ejecución.
Dónde registrar los oyentes de eventos
Los oyentes de eventos generalmente deben registrarse en el método beforeLoad() del plugin, para asegurar que los eventos estén listos durante la fase de carga del plugin y que la lógica posterior pueda responder de manera adecuada.
Escuchar eventos de la aplicación app.on()
Los eventos de la aplicación se utilizan para capturar los cambios en el ciclo de vida de la aplicación NocoBase y los plugins, y son adecuados para la lógica de inicialización, el registro de recursos o la detección de dependencias de plugins.
Tipos de eventos comunes
Ejemplo: Escuchar el evento de inicio de la aplicación
Ejemplo: Escuchar el evento de carga de un plugin
Escuchar eventos de la base de datos db.on()
Los eventos de la base de datos pueden capturar varios cambios de datos a nivel del modelo, y son adecuados para auditorías, sincronización, autocompletado y otras operaciones.
Tipos de eventos comunes
Ejemplo: Escuchar el evento después de la creación de datos
Ejemplo: Escuchar el evento antes de la actualización de datos

