getAttributesByMarker
الحصول على جميع السمات مع البيانات من مجموعة السمات.
الوصف
ترجع هذه الطريقة جميع السمات مع البيانات من مجموعة السمات. ترجع وعدًا (Promise) يتم حله إلى مصفوفة من كائنات IAttributesSetsEntity - الكيانات الخاصة بالسمات نفسها (marker, type, value, listTitles, validators, localizeInfos, additionalFields, …)، وليس كيان مجموعة السمات.
.getAttributesByMarker(
,
);
مخطط المعلمات
المخطط
marker(required): string
علامة السمة
مثال: "productAttributes"
langCode: string
رمز اللغة. الافتراضي: "en_US"
مثال: "en_US"
أمثلة
مثال بسيط
const response = await AttributesSets.getAttributesByMarker('my-marker');
مثال مع السمات
const response = await AttributesSets.getAttributesByMarker('my-marker', 'en_US');
مثال على الاستجابة
[
{
"type": "string",
"value": null,
"marker": "admin-text",
"position": 1,
"listTitles": [],
"validators": {},
"multiselect": false,
"initialValue": null,
"localizeInfos": {
"title": "Admins text"
},
"additionalFields": {}
}
]
مخطط الاستجابة
المخطط: IAttributesSetsEntity[]
type: AttributeType
نوع السمة.
مثال: "string", "text", "integer", "إلخ"
value: unknown
قيمة السمة، مُعَيارَة بنفس الطريقة التي يتم بها معيار قيمة السمة: number | null للأنواع الرقمية، كائن الملف نفسه لملف واحد من نوع image/file، null عندما لا تحمل السمة قيمة.
initialValue: unknown
القيمة الأولية للسمة.
marker: string
معرف نصي للسمة (علامة).
مثال: "color", "size", "إلخ"
position: number
رقم الموضع للفرز.
مثال: 1
listTitles: IListTitle[]
مصفوفة من القيم (مع بيانات موسعة) لسمات القائمة و radioButton؛ مصفوفة فارغة للأنواع غير القائمة.
مثال:
[
{
"title": "red",
"value": 1,
"position": 1,
"extendedValue": null,
"extendedValueType": null
},
{
"title": "yellow",
"value": 2,
"position": 2,
"extendedValue": null,
"extendedValueType": null
}
]
listTitles.title: string
العنوان أو الاسم المرتبط بعنصر القائمة.
مثال: "اسم العنصر"
listTitles.value: number | string
قيمة عنصر القائمة، والتي يمكن أن تكون إما رقمًا أو سلسلة نصية حسب السياق.
مثال: 42
listTitles.position: string | number | null
موضع عنصر القائمة، والذي يمكن تمثيله كسلسلة نصية أو رقم أو null إذا لم يكن ذلك مناسبًا.
مثال: 1
listTitles.extended: object
كائن يحتوي على خصائص إضافية أو بيانات وصفية تتعلق بعنصر القائمة. يمكن أن تتضمن أي تفاصيل إضافية توسع المعلومات الأساسية.
listTitles.extended.value: string | null
القيمة الموسعة، والتي يمكن أن تكون سلسلة نصية أو null.
مثال: "extra_value"
listTitles.extended.type: string | null
نوع القيمة الموسعة، والتي يمكن أن تكون سلسلة نصية أو null.
مثال: "color"
validators: IAttributeValidators
مجموعة من المدققين للتحقق؛ كائن فارغ عندما لا يتم تكوين أي مدققين.
مثال:
{
"requiredValidator": {
"strict": true
},
"defaultValueValidator": {
"fieldDefaultValue": 11
}
}
validators.requiredValidator: object | boolean
يجب ملء الحقل. الشكل: { strict: boolean }.
مثال:
{ strict: true }
validators.trimValidator: object | boolean
يتم إزالة المسافات البيضاء من القيمة. يتم تخزينها ككائن فارغ عندما يكون التبديل مفعلًا.
مثال:
{}
validators.stringInspectionValidator: object
قيود الطول لحقول السلسلة النصية.
مثال:
{ stringLength: 0, stringMin: 2, stringMax: 60 }
validators.urlInspectionValidator: object | boolean
يجب أن تبدو القيمة مثل عنوان URL. يتم تخزينها إما كـ true أو ككائن.
مثال:
true
validators.emailInspectionValidator: object | boolean
يجب أن تبدو القيمة مثل عنوان بريد إلكتروني. يتم تخزينها إما كـ true أو ككائن.
مثال:
true
validators.checkForNumberValidator: object
يجب أن تكون القيمة رقمًا، اختياريًا عددًا صحيحًا ضمن الحدود. 0 يعطل حدًا.
مثال:
{ integerOnly: true, minValue: 1, maxValue: 10 }
validators.roundingNumberValidator: object
يتم تقريب الرقم قبل تخزينه.
مثال:
{ integerOnly: false, numberOfDecimals: 2, direction: 'round' }
validators.booleanValidator: object
يجب أن تساوي القيمة واحدة من القيم المعلنة.
مثال:
{ trueValue: 1, falseValue: 0 }
validators.comparisonValidator: object
يقارن القيمة مع سمة أخرى أو مع ثابت.
مثال:
{ compareAttribute: 'notChoosed', compareValue: '10', type: 'number', operator: 'equality' }
validators.regExpValidator: object
يجب أن تتطابق القيمة مع تعبير منتظم؛ invert يرفض المطابقات بدلاً من ذلك.
مثال:
{ patternValue: '^[0-9]{5}$', invert: false, flags: ['i'] }
validators.fieldMaskValidator: object
يجب أن تتطابق القيمة مع قناع إدخال (9 رقم، A حرف كبير، a حرف صغير، * أي، $ واحد من ()+-).
مثال:
{ maskValue: '+9 (999) 999-99-99' }
validators.checkForAGivenList: object
يجب أن تكون القيمة في القائمة، أو خارجها عندما تكون notValue صحيحة.
مثال:
{ rangeValue: ['red', 'green'], notValue: false }
validators.defaultValueValidator: object
القيمة التي يتم استبدالها عندما يُترك الحقل فارغًا.
مثال:
{ fieldDefaultValue: 'USD' }
validators.sizeInPixelsValidator: object
حدود الصورة بالبكسل؛ يتم تنفيذها بواسطة لوحة الإدارة.
مثال:
{ maxX: 1920, maxY: 1080 }
validators.checkingFilesValidator: object
حدود حجم الملف والامتدادات المسموح بها؛ يتم تنفيذها بواسطة لوحة الإدارة.
مثال:
{ minValue: 0, maxValue: 5, minUnits: 'kb', maxUnits: 'mb', extensions: ['pdf'] }
validators.minMaxDateValidator: object
حدود التاريخ؛ يتم تنفيذها بواسطة لوحة الإدارة.
مثال:
{ minDateTimeValue: '2026-01-01', maxDateTimeValue: '2026-12-31' }
validators.valueValidator: object
تحكم "القيمة الافتراضية" في اللوحة؛ تكتب defaultValueValidator، ويتم الاحتفاظ بهذا الاسم لأن واجهة برمجة التطبيقات تقبله وتخزنه.
مثال:
{ fieldDefaultValue: 'USD' }
validators.checkForLettersValidator: object
تحقق من الحروف فقط حسب النمط؛ يتم تنفيذها بواسطة لوحة الإدارة.
مثال:
{ patternValue: '^[A-Za-z ]+$' }
localizeInfos: IAttributeLocalizeInfo
اسم القالب، مع الأخذ في الاعتبار التوطين.
مثال:
{
"title": "My attribute"
}
additionalFields: Record<string, IAttributesSetsEntity>
سمات فرعية متداخلة مفاتيحها هي العلامة؛ كائن فارغ عندما لا يوجد.
أمثلة الاستخدام
خطوات تفصيلية في الوثائق:
- الحصول على السمات حسب العلامة — استرجاع مخطط السمة لمجموعة سمات معينة حسب علامتها.
جربها مباشرة
قم بتشغيل هذه الطريقة تفاعليًا في JS SDK sandbox — قم بتوصيل عنوان مشروعك ورمز التطبيق عند الزيارة الأولى، ثم افتح:
- الحصول على السمات حسب العلامة — استرجاع مخطط السمة لمجموعة سمات معينة حسب علامتها.