Partager via


Tutoriel : activer des fonctionnalités conditionnelles avec un filtre personnalisé dans une application JavaScript

Les indicateurs de fonctionnalités peuvent utiliser des filtres de fonctionnalités pour activer des fonctionnalités de manière conditionnelle. Pour en savoir plus sur les filtres de fonctionnalités, consultez Tutoriel : Activer des fonctionnalités conditionnelles avec des filtres de fonctionnalités.

L’exemple utilisé dans ce tutoriel repose sur l’application Node.js présentée dans le démarrage rapide sur la gestion des fonctionnalités. Avant de continuer, effectuez ce démarrage rapide pour créer une application Node.js avec un indicateur de fonctionnalité Beta. Une fois terminé, vous devez ajouter un filtre de fonctionnalités personnalisé à l’indicateur de fonctionnalité Beta dans votre magasin App Configuration.

Dans ce tutoriel, vous allez apprendre à implémenter un filtre de fonctionnalités personnalisé et à l’utiliser pour activer les fonctionnalités de manière conditionnelle. Nous utilisons l’application de console Node.js comme exemple, mais vous pouvez également utiliser le filtre de fonctionnalité personnalisé dans d’autres applications JavaScript.

Prérequis

Implémenter un filtre de fonctionnalité personnalisé

Vous avez ajouté un filtre de fonctionnalités personnalisé nommé Random avec un paramètre Percentage pour votre indicateur de fonctionnalité Beta dans les prérequis. Ensuite, implémentez le filtre de fonctionnalités pour activer l’indicateur de fonctionnalité Beta en fonction de la probabilité définie par le paramètre Percentage.

  1. Ouvrez le fichier app.js et ajoutez le RandomFilter avec le code suivant.

    class RandomFilter {
        name = "Random";
        evaluate(context) {
            const percentage = context.parameters.Percentage;
            const randomNumber = Math.random() * 100;
            return randomNumber <= percentage;
        }
    }
    

    Vous avez ajouté une classe RandomFilter qui dispose d’une méthode unique nommée evaluate qui est appelée lors de chaque évaluation d’un indicateur de fonctionnalité. Dans evaluate, un filtre de fonctionnalités active un indicateur de fonctionnalité en retournant true.

    Vous avez défini le nom de RandomFilter sur Aléatoire, qui correspond au nom de filtre que vous avez défini dans l’indicateur de fonctionnalité Bêta d’Azure App Configuration.

  2. Inscrivez le RandomFilter lors de la création du FeatureManager.

    const fm = new FeatureManager(ffProvider, {customFilters: [new RandomFilter()]});
    

Filtre de fonctionnalités en action

Lorsque vous exécutez l’application, le fournisseur de configuration charge l’indicateur de fonctionnalité Beta à partir d’Azure App Configuration. Le résultat de la méthode isEnabled("Beta") est imprimé dans la console. L’implémentation de RandomFilter et son utilisation par l’indicateur de fonctionnalité Beta a pour résultat True 50 % du temps et False le reste du temps.

L’exécution de l’application montre que l’indicateur de fonctionnalité Beta est parfois activé et que d’autres fois il ne l’est pas.

Beta is enabled: true
Beta is enabled: false
Beta is enabled: false
Beta is enabled: true
Beta is enabled: true
Beta is enabled: false
Beta is enabled: false
Beta is enabled: false
Beta is enabled: true
Beta is enabled: true

Étapes suivantes

Pour en savoir plus sur les filtres de fonctionnalités intégrés, passez aux tutoriels suivants.