Freigeben über


Aktivieren bedingter Features mit einem benutzerdefinierten Filter in einer JavaScript-Anwendung

Featureflags können Featurefilter verwenden, um Features bedingt zu aktivieren. Weitere Informationen zu Featurefiltern finden Sie unter Aktivieren von bedingten Features mit Featurefiltern.

Das in diesem Leitfaden verwendete Beispiel basiert auf der Node.js-Anwendung, die im Schnellstart zur Featureverwaltung eingeführt wurde. Bevor Sie fortfahren, führen Sie die Schnellstartanleitung aus, um eine Node.js-Anwendung mit einem Featureflag namens Beta zu erstellen. Nach Abschluss müssen Sie dem Beta-Featureflag in Ihrem App Configuration-Speicher einen benutzerdefinierten Featurefilter hinzufügen.

In diesem Artikel erfahren Sie, wie Sie einen benutzerdefinierten Featurefilter implementieren und verwenden, um Features bedingt zu aktivieren. Wir verwenden die Node.js-Konsolen-App als Beispiel, aber Sie können auch den benutzerdefinierten Featurefilter in anderen JavaScript-Anwendungen verwenden.

Voraussetzungen

Implementieren eines benutzerdefinierten Featurefilters

Sie haben einen benutzerdefinierten Featurefilter namens Random mit einem Percentage-Parameter für Ihr Beta-Featureflag in den Voraussetzungen hinzugefügt. Als Nächstes implementieren Sie den Featurefilter, um das Beta-Featureflag basierend auf der durch den Percentage-Parameter definierten Chance zu aktivieren.

  1. Öffnen Sie die Datei app.js, und fügen Sie RandomFilter mit dem folgenden Code hinzu.

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

    Sie haben die RandomFilter-Klasse hinzugefügt, die über eine einzelne Methode namens evaluate verfügt, die immer dann aufgerufen wird, wenn ein Featureflag ausgewertet wird. In evaluate aktiviert ein Featurefilter ein Featureflag, indem true zurückgegeben wird.

    Sie haben den Namen von RandomFilter auf Random festgelegt. So entspricht der Name dem Filternamen, den Sie im Featureflag Beta in der Azure App-Konfiguration festgelegt haben.

  2. Registrieren Sie RandomFilter beim Erstellen von FeatureManager.

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

Featurefilter in Aktion

Wenn Sie die Anwendung ausführen, lädt der Konfigurationsanbieter das Featureflag Beta aus Azure App Configuration. Das Ergebnis der isEnabled("Beta")-Methode wird in der Konsole ausgegeben. Wenn RandomFilter implementiert und vom Featureflag Beta verwendet wird, ist das Ergebnis 50 Prozent der Zeit True und die anderen 50 Prozent der Zeit False.

Bei der Ausführung der Anwendung sehen Sie, dass das Featureflag Beta manchmal aktiviert ist und manchmal nicht.

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

Nächste Schritte

Wenn Sie mehr über die eingebauten Featurefilter erfahren möchten, fahren Sie mit den folgenden Dokumenten fort.