Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Funktionsflaggor kan använda funktionsfilter för att aktivera funktioner villkorligt. Mer information om funktionsfilter finns i Aktivera villkorsstyrda funktioner med funktionsfilter.
Exemplet som används i den här guiden baseras på det Node.js program som introducerades i snabbstarten för funktionshantering. Innan du fortsätter kan du slutföra snabbstarten för att skapa ett Node.js-program med en betafunktionsflagga . När du är klar måste du lägga till ett anpassat funktionsfilter i betafunktionsflaggan i appkonfigurationsarkivet.
I den här artikeln lär du dig hur du implementerar ett anpassat funktionsfilter och använder funktionsfiltret för att aktivera funktioner villkorligt. Vi använder Node.js-konsolappen som exempel, men du kan också använda det anpassade funktionsfiltret i andra JavaScript-program.
Förutsättningar
- Skapa en konsolapp med en funktionsflagga.
- Lägga till ett anpassat funktionsfilter i funktionsflaggan
Implementera ett anpassat funktionsfilter
Du har lagt till ett anpassat funktionsfilter med namnet Random med en procentparameter för din Beta-funktionsflagga i förutsättningarna. Sedan implementerar du funktionsfiltret för att aktivera betafunktionsflaggan baserat på den chans som definieras av parametern Procent .
Öppna filen app.js och lägg till
RandomFiltermed följande kod.class RandomFilter { name = "Random"; evaluate(context) { const percentage = context.parameters.Percentage; const randomNumber = Math.random() * 100; return randomNumber <= percentage; } }Du har lagt till en
RandomFilterklass som har en enda metod med namnetevaluate, som anropas när en funktionsflagga utvärderas. Ievaluateaktiverar ett funktionsfilter en funktionsflagga genom atttruereturnera .Du ställer in namnet
RandomFilterpå slumpmässigt, vilket matchar filternamnet som du angav i flaggan Beta-funktion i Azure App Configuration.RandomFilterRegistrera när du skaparFeatureManager.const fm = new FeatureManager( new ConfigurationMapFeatureFlagProvider(appConfig), { customFilters: [new RandomFilter()] });
Funktionsfilter i praktiken
När du kör programmet läser konfigurationsprovidern in betafunktionsflaggan från Azure App Configuration. Resultatet av isEnabled("Beta") metoden skrivs ut till konsolen.
RandomFilter När den implementeras och används av betafunktionsflaggan blir True resultatet 50 procent av tiden och False de övriga 50 procenten av tiden.
När programmet körs visas att betafunktionsflaggan ibland är aktiverad och ibland inte.
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ästa steg
Om du vill veta mer om de inbyggda funktionsfiltren fortsätter du till följande dokument.
För den fullständiga funktionskörningen av JavaScript-funktionshanteringsbiblioteket fortsätter du till följande dokument.