Поле
Обзор
Это абстрактный класс для управления полями коллекции. Он также является базовым классом для всех типов полей. Любой другой тип поля реализуется путём наследования от этого класса.
Информацию о том, как настроить собственные поля, вы найдёте в разделе [Расширение типов полей].
Конструктор
Обычно разработчики не вызывают его напрямую. Он используется как прокси-точка входа через метод db.collection({ fields: [] }).
При расширении полей вы реализуете их, наследуя от абстрактного класса Field, а затем регистрируя в экземпляре Database.
Сигнатура
constructor(options: FieldOptions, context: FieldContext)
Параметры
Члены экземпляра
name
Имя поля.
type
Тип поля.
dataType
Тип хранения поля в базе данных.
options
Параметры конфигурации инициализации поля.
context
Объект контекста поля.
Методы конфигурации
on()
Это сокращённый способ определения обработчиков для событий коллекции. Эквивалентно вызову db.on(this.collection.name + '.' + eventName, listener).
При наследовании обычно нет необходимости переопределять этот метод.
Сигнатура
on(eventName: string, listener: (...args: any[]) => void)
Параметры
off()
Это сокращённый способ удаления обработчиков для событий коллекции. Эквивалентно вызову db.off(this.collection.name + '.' + eventName, listener).
При наследовании обычно нет необходимости переопре делять этот метод.
Сигнатура
off(eventName: string, listener: (...args: any[]) => void)
Параметры
bind()
Содержимое, которое выполняется при добавлении поля в коллекцию. Обычно используется для добавления слушателей событий коллекции и другой обработки.
При наследовании необходимо сначала вызвать соответствующий метод super.bind().
Сигнатура
bind()
unbind()
Содержимое, которое выполняется при удалении поля из коллекции. Обычно используется для удаления слушателей с обытий коллекции и другой обработки.
При наследовании необходимо сначала вызвать соответствующий метод super.unbind().
Сигнатура
unbind()
get()
Получает значение параметра конфигурации поля.
Сигнатура
get(key: string): any
Параметры
Пример
merge()
Объединяет значения параметров конфигурации поля.
Сигнатура
merge(options: { [key: string]: any }): void
Параметры
Пример

