Facade API
Découvrez comment ajouter la Facade API à votre application pour simplifier l’utilisation d’Web SDK.
Pour répondre à des besoins complexes, Univer repose sur une architecture qui peut elle aussi s’avérer complexe et rendre son utilisation plus difficile. C’est pourquoi nous proposons une Facade API plus simple et plus conviviale.
Ce chapitre explique en détail comment ajouter la Facade API à votre application. Le chapitre « Fonctionnalités » qui suit présente les principales Facade API de chaque fonctionnalité. Pour consulter toutes les Facade API, reportez-vous à la référence API de chaque plug-in.
Attention
Certaines Facade API sont asynchrones, en particulier celles qui modifient des données et renvoient souvent une Promise. Si vous devez récupérer des données immédiatement après les avoir modifiées, utilisez await ou .then(). Dans le cas contraire, vous risquez d’obtenir des résultats inattendus. Pour savoir précisément quelles API renvoient des Promises, consultez le manuel de référence de l’API correspondante.
Intégrer la Facade API en mode prédéfini
Si vous intégrez Univer en mode prédéfini, les Facade API des fonctionnalités incluses sont automatiquement importées. Lors de la création d’une instance Univer, l’instance Facade API correspondante, univerAPI, est également renvoyée et peut être utilisée directement.
Intégrer la Facade API en mode plug-in
Installation
Lorsque vous installez Univer en mode plug-in, les différentes implémentations de la Facade API sont réparties entre plusieurs plug-ins et montées sur l’objet racine global de la Facade API. Vous pouvez donc importer, selon vos besoins, l’implémentation Facade API correspondant à chaque plug-in qui en propose une.
import { FUniver } from '@univerjs/core/facade'import '@univerjs/ui/facade'import '@univerjs/docs-ui/facade'Attention
Tous les plug-ins n’incluent pas de package facade. La documentation de chaque fonctionnalité indique si celui-ci est disponible.
Utilisation
La Facade API est une enveloppe autour de l’instance Univer. Après avoir créé cette dernière, vous devez donc l’envelopper avec FUniver :
import { FUniver } from '@univerjs/core/facade'const univerAPI = FUniver.newAPI(univer)Points d’attention
Toutes les Facade API ne peuvent pas être appelées immédiatement : certaines doivent être utilisées à des étapes précises du cycle de vie. Si une exécution immédiate ne fonctionne pas, utilisez la méthode suivante pour choisir l’étape du cycle de vie appropriée :
const disposable = univerAPI.addEvent(univerAPI.Event.LifeCycleChanged, ({ stage }) => { if (stage === univerAPI.Enum.LifecycleStages.Rendered) { // Code to be executed when the lifecycle stage is Rendered } if (stage === univerAPI.Enum.LifecycleStages.Steady) { // Code to be executed when the lifecycle stage is Steady }})Que pensez-vous de ce guide ?