Feature Flags
علامات الميزات (Feature flags)، والمعروفة أيضًا باسم مفاتيح تبديل الميزات (feature toggles)، هي تقنية في تطوير البرمجيات تتيح للمطورين تفعيل أو تعطيل وظائف في تطبيقهم دون الحاجة إلى إعادة نشر الكود. يمكن استخدام علامات الميزات لاختبارات 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): يضبط دالة رد النداء (callback) التي تُستخدم عند تحميل علامات الميزات (Feature Flags).