Partager via


Vérifier la disponibilité de l’API au moment de l’exécution

Si votre complément utilise une fonctionnalité d’extensibilité spécifique pour certaines de ses fonctionnalités, mais qu’il a d’autres fonctionnalités utiles qui ne nécessitent pas la fonctionnalité d’extensibilité, vous devez concevoir le complément afin qu’il soit installable sur des combinaisons de plateformes et de versions Office qui ne prennent pas en charge la fonctionnalité d’extensibilité. Il peut fournir une expérience précieuse, bien que réduite, sur ces combinaisons.

Lorsque la différence entre les deux expériences est entièrement constituée de différences dans les API de la bibliothèque JavaScript Office appelées et non dans les fonctionnalités configurées dans le manifeste, vous testez au moment de l’exécution pour découvrir si le client Office de l’utilisateur prend en charge un ensemble de conditions requises pour l’API. Vous pouvez également tester au moment de l’exécution si les API qui ne sont pas dans un ensemble sont prises en charge.

Remarque

Pour fournir d’autres expériences avec les fonctionnalités qui nécessitent la configuration du manifeste, suivez les instructions fournies dans Spécifier les hôtes Office et les exigences d’API avec le manifeste unifié ou Spécifier les applications Office et les exigences d’API avec le manifeste de complément uniquement.

Vérifier la prise en charge de l’ensemble de conditions requises

La méthode isSetSupported est utilisée pour case activée pour la prise en charge des ensembles de conditions requises. Transmettez le nom de l’ensemble de conditions requises et la version minimale en tant que paramètres. Si l’ensemble de conditions requises est pris en charge, isSetSupported retourne true. Le code ci-dessous vous montre un exemple.

if (Office.context.requirements.isSetSupported("WordApi", "1.2")) {
   // Code that uses API members from the WordApi 1.2 requirement set.
} else {
   // Provide diminished experience here.
   // For example, run alternate code when the user's Word is
   // volume-licensed perpetual Word 2016 (which doesn't support WordApi 1.2).
}

Tenez compte du code suivant :

  • Le premier paramètre est obligatoire. Il s’agit d’une chaîne qui représente le nom de l’ensemble de conditions requises. Pour plus d’informations concernant les ensembles de conditions requises disponibles, voir Ensembles de conditions requises pour complément Office.
  • Le deuxième paramètre est facultatif. Il s’agit d’une chaîne qui spécifie la version minimale de l’ensemble de conditions requises que l’application Office doit prendre en charge pour que le code dans l’instruction if s’exécute (par exemple, « 1.9 »). Si elle n’est pas utilisée, la version « 1.1 » est supposée.

Avertissement

Lors de l’appel de la isSetSupported méthode , la valeur du deuxième paramètre (si spécifié) doit être une chaîne, et non un nombre. L’analyseur JavaScript ne peut pas différencier les valeurs numériques telles que 1.1 et 1.10, contrairement aux valeurs de chaîne telles que « 1.1 » et « 1.10 ».

Le tableau suivant présente les noms des ensembles de conditions requises pour les modèles d’API spécifiques à l’application.

Application Office RequirementSetName
Excel ExcelApi
OneNote OneNoteApi
Outlook Boîte aux lettres
PowerPoint PowerPointApi
Word WordApi

Voici un exemple d’utilisation de la méthode avec l’un des ensembles de conditions requises du modèle d’API commun.

if (Office.context.requirements.isSetSupported('CustomXmlParts')) {
    // Run code that uses API members from the CustomXmlParts requirement set.
} else {
    // Run alternate code when the user's Office application doesn't support the CustomXmlParts requirement set.
}

Remarque

La isSetSupported méthode et les ensembles de conditions requises pour ces applications sont disponibles dans le dernier fichier Office.js sur le CDN. Si vous n’utilisez pas Office.js à partir du CDN, votre complément peut générer des exceptions si vous utilisez une ancienne version de la bibliothèque dans laquelle isSetSupported n’est pas définie. Pour plus d’informations, voir Utiliser la dernière bibliothèque d’API JavaScript Office.

Vérifier la prise en charge de l’API sans définition

Lorsque votre complément dépend d’une méthode qui ne fait pas partie d’un ensemble de conditions requises, appelée API sans définition, utilisez une case activée d’exécution pour déterminer si la méthode est prise en charge par l’application Office, comme illustré dans l’exemple de code suivant. Pour consulter la liste complète des méthodes qui n’appartiennent pas à un ensemble de conditions requises, voir Ensemble de conditions requises pour les compléments Office.

Remarque

Nous vous recommandons de limiter l’utilisation de ce type de vérification à l’exécution dans le code de votre complément.

L’exemple de code suivant vérifie si l’application Office prend en charge document.setSelectedDataAsync.

if (Office.context.document.setSelectedDataAsync) {
    // Run code that uses `document.setSelectedDataAsync`.
}

Voir aussi