EnumField

Type parameters

  • T: string

Hierarchy

  • EnumField

Properties

Readonly data

data: object

Данные поля категории.

Type declaration

  • variants: TEnum<string>[]

    Набор доступных для выбора вариантов категории.

    Можно добавлять варианты через скрипт. В зависимости от подтипа категории они появятся в интерфейсе в виде выпадающего списка или флажка. Примеры использования:

    // Перебор доступных вариантов
    for (const v of Context.fields.category.data.variants) {
    console.log(v.name, v.code);
    }
    // Добавление варианта к списку доступных вариантов
    const v1 = { name: 'ONE', code: 'one' };
    Context.fields.category.data.variants.push(v1);
    

variants

variants: object

Словарь допустимых значений: ключ — code, значение — объект TEnum.

Примеры использования:

// Доступ к варианту по его коду

// Если код содержит недопустимые для JS-идентификатора символы,
// например, начинается с цифры или содержит дефис,
// доступ возможен только через квадратные скобки
const v1 = Context.fields.category.variants["1n"];
const v2 = Context.fields.category.variants["order-type"];

// С допустимым идентификатором используется точка или квадратные скобки
const v3 = Context.fields.category.variants.product;
const v4 = Context.fields.category.variants["product"];

// Получение всех вариантов как объектов `TEnum`
const dict = Context.fields.category.variants;
const allVariants = Object.keys(dict).map(code => {
    const key = code as keyof typeof dict;
    return dict[key];
});

Type declaration