Concepts de base
Découvrez les plugins, instantanés, commandes et API Facade de Univer Sheets. Pour créer un éditeur, consultez l’installation et l’utilisation de base.
Concepts de base
Avant d’aller plus loin avec Univer, lisez ce document pour en comprendre les concepts de base. Vous pourrez ainsi utiliser Univer plus facilement.
Ces concepts de base sont les suivants :
- Plugin
- Instantané
- Commande
- Facade API
Plugins
Toutes les fonctionnalités d’Univer sont fournies par des plugins, qui en constituent les briques fondamentales. La combinaison de plusieurs plugins forme une application Univer.
Les plugins ont notamment les responsabilités suivantes :
- Implémenter des fonctionnalités, par exemple
@univerjs/sheets-filterfournit une fonction de filtrage. - Fournir des capacités de base, par exemple
@univerjs/engine-renderfournit les capacités de rendu.
Vous pouvez combiner les plugins d’Univer pour créer une application adaptée à vos besoins tout en évitant de charger du code inutile. Vous pouvez également étendre les fonctionnalités d’Univer en écrivant vos propres plugins afin de répondre à des besoins spécifiques.
Liens connexes
- Écrire un plugin d’importation CSV pour apprendre à créer un plugin.
- Architecture d’Univer pour en savoir plus sur la conception de l’architecture d’Univer.
Instantané
Pour charger un document dans Univer, vous devez charger un instantané. Chaque type de document possède son propre format d’instantané. Consultez la documentation de l’API mentionnée ci-dessus pour savoir comment créer un instantané conforme au format requis :
- Le format d’instantané d’une feuille de calcul est
IWorkbookData. - Le format d’instantané d’un document est
IDocumentData.
Les plugins fonctionnels peuvent stocker des ressources, telles que des images, dans le champ resources. Pour plus d’informations, consultez Modèle de plugin personnalisé.
Attention
Remarque : l’instantané d’Univer sert uniquement à stocker les données. Il ne reflète pas le dernier état du document au moment de l’exécution ! Pour enregistrer l’état du document sous forme d’instantané, utilisez la méthode d’enregistrement d’instantané de la Facade API.
Commande
Dans Univer, toute modification des données doit être effectuée au moyen de commandes. Cette approche permet de mieux suivre l’évolution des valeurs, de mettre en œuvre des fonctions telles que l’annulation, le rétablissement et l’édition collaborative, ainsi que de gérer les interactions complexes entre les fonctionnalités.
Pour modifier les données d’un document au moyen de commandes, consultez Comment trouver l’ID d’une commande. Si vous choisissez d’utiliser la Facade API, celle-ci prépare en réalité les paramètres à votre place et exécute les commandes en arrière-plan.
Attention
Ne modifiez pas directement l’instantané ! La modification ne prendra pas effet et ne déclenchera pas la mise à jour des vues ni de l’interface utilisateur. Modifiez les données au moyen de commandes ou de la Facade API.
Facade API
Les applications bureautiques étant très complexes, l’architecture d’Univer l’est également. Afin de faciliter l’utilisation d’Univer par les développeurs, nous proposons la Facade API. Cette couche enveloppe les plugins officiels d’Univer et fournit des interfaces plus simples.
La Facade API fait l’objet d’améliorations continues. Si vous avez des questions ou des besoins particuliers, veuillez ouvrir une issue sur GitHub.
La Facade API est une API de haut niveau qui masque les détails sous-jacents. Elle simplifie les tâches courantes, mais les fonctionnalités complexes peuvent nécessiter de comprendre l’architecture d’Univer et d’utiliser directement l’API de bas niveau.
Liens connexes
Mode preset et mode plugin
Un preset regroupe des plugins préconfigurés. Les deux modes offrent les mêmes capacités avec les mêmes plugins. Les presets simplifient la configuration ; le mode plugin permet de contrôler leur composition et leur chargement.
Utilisez des versions cohérentes pour toutes les dépendances Univer. N’enregistrez pas à nouveau un plugin déjà inclus dans un preset.
| Mode plugin | Mode preset |
|---|---|
| Importer explicitement les extensions Facade | Extensions Facade incluses |
| Contrôler l’ordre d’enregistrement | Le preset gère ses plugins |
| Charger les plugins à la demande | Charger les presets configurés à l’initialisation |
Que pensez-vous de ce guide ?