Feature Flags
Feature-флаги, также известные как feature toggles, — это методика разработки программного обеспечения, которая позволяет разработчикам включать или отключать функциональность в своём приложении без необходимости повторного развёртывания кода. Feature-флаги можно использовать для A/B-тестирования и постепенного развёртывания, в качестве функции персонализации или просто как аварийный выключатель для быстрого отключения определённых функций, вызывающих ошибки в продакшене.
Общий интерфейс флага
Section titled Общий интерфейс флагаinterface IFeatureFlag {
key: string
is_persist: boolean
value: string | boolean
payload: string
}
Tracker SDK
Section titled Tracker SDKПараметры
Section titled Параметрыconst tracker = new Tracker({
projectKey: 'your. project key',
// the rest of your tracker options
flags: {
onFlagsLoad: (flags: IFeatureFlag[]) => {
// handle active flags
},
}
})
Методы
Section titled Методыtracker.clearPersistFlags()— Удаляет постоянные Feature Flags из sessionStorage браузера.tracker.reloadFlags(): Promise<void>— Перезагружает все флаги (может быть полезно, если в сессии пользователя изменились метаданные, userId или любая другая информация, которая может потребоваться для определённых условий флага).tracker.getFeatureFlag(flagKey: string): ВозвращаетIFeatureFlagпо ключу, если он существует.tracker.getAllFeatureFlags(): Возвращает все флаги (IFeatureFlag[]), активные в данный момент.tracker.isFlagEnabled(flagKey: string): Возвращаетtrue, если флаг с этим ключом существует и активен.tracker.onFlagsLoad(callback): Устанавливает колбэк, который будет использован при загрузке Feature Flags.