Context
Dans NocoBase, le contexte (Context) est le pont qui relie le code de plugin aux capacités de NocoBase. Via le contexte, vous pouvez envoyer des requêtes, traduire, écrire des logs, naviguer entre pages, etc.
Le contexte a deux points d'accès :
- Dans le Plugin :
this.context - Dans un composant React :
useFlowContext()(importé depuis@nocobase/flow-engine)
Les deux renvoient le même objet (instance de FlowEngineContext), seuls les contextes d'utilisation diffèrent.
Utilisation dans le Plugin
Dans les méthodes de cycle de vie du plugin (comme load()), accédez au contexte via this.context :
Utilisation dans un composant
Dans un composant React, récupérez le même objet de contexte via useFlowContext() :
Raccourcis du Plugin vs propriétés ctx
La classe Plugin fournit des raccourcis pratiques pour load(). Notez que certains raccourcis de la classe Plugin et les propriétés homonymes sur ctx pointent vers des objets différents :
Le couple le plus facile à confondre est this.router et ctx.router :
this.router(raccourci Plugin) → RouterManager, sert à enregistrer des routes (.add())ctx.router(propriété de contexte) → instance React Router, sert à la navigation (.navigate())
Capacités courantes fournies par le contexte
Voici les capacités courantes du contexte. Certaines ne sont disponibles que dans le Plugin, d'autres uniquement dans les composants, certaines existent des deux côtés mais avec des syntaxes différentes.
Voir Capacités courantes pour les utilisations détaillées et les exemples de code.
Liens connexes
- Capacités courantes — utilisations détaillées de ctx.api, ctx.t, ctx.logger, etc.
- Plugin — point d'entrée et raccourcis du plugin
- Développement de composants Component — utilisation de base de useFlowContext dans les composants

