ol/Object~BaseObject
import BaseObject from 'ol/Object.js';
Абстрактный базовый класс; обычно используется только для создания подклассов и не создаётся в приложениях. От него наследуется большинство нетривиальных классов.
Расширяет Observable наблюдаемыми свойствами: наблюдаемым является как каждое свойство, так и объект в целом.
Классы, наследующие этот класс, имеют предопределённые свойства, к которым можно добавлять собственные. Предопределённые свойства перечислены в этой документации в разделе «Наблюдаемые свойства» и имеют собственные методы доступа; например, у Map есть свойство target, доступное через getTarget() и изменяемое с помощью setTarget(). Однако не все свойства можно задавать. Также доступны универсальные методы доступа get() и set(). Например, get('target') эквивалентно getTarget().
Методы доступа set вызывают событие изменения, за которым можно следить, зарегистрировав слушателя. Например, у View есть свойство center, поэтому view.on('change:center', function(evt) {...}); будет вызывать функцию при каждом изменении значения свойства center. Внутри функции evt.target будет представлением, поэтому evt.target.getCenter() вернёт новый центр.
Добавить собственные наблюдаемые свойства можно с помощью object.set('prop', 'value'), а получить их значение — с помощью object.get('prop'). Отслеживать изменения значения этого свойства можно с помощью object.on('change:prop', listener). Получить список всех свойств можно с помощью getProperties.
Обратите внимание, что наблюдаемые свойства отличаются от стандартных свойств JS. Например, объекту карты можно задать заголовок с помощью map.title='New title' и map.set('title', 'Another title'). В первом случае это будет hasOwnProperty; во втором он появится в getProperties(). Наблюдаемым является только второе.
Свойства можно удалить с помощью метода unset. Например: object.unset('foo').
-
Имя Тип Описание valuesNoInfer.<Properties> | undefined Объект с парами «ключ — значение».
Вызывает события:
-
change(BaseEvent) — общее событие изменения. Вызывается при увеличении счётчика версий. -
error(BaseEvent) — общее событие ошибки. Вызывается при возникновении ошибки. -
propertychange(ObjectEvent) — вызывается при изменении свойства.
-
Подклассы
Расширяет
Методы
-
changed() унаследован
-
Увеличивает счётчик версий и отправляет событие 'change'.
-
dispatchEvent(event){boolean | undefined} унаследован
-
Отправляет событие и вызывает всех слушателей, подписанных на события этого типа. Параметр event может быть строкой или объектом со свойством
type.Имя Тип Описание eventBaseEvent | string Объект события.
Возвращает:
false, если кто-либо вызвал preventDefault для объекта события или если какой-либо из слушателей вернул false.
-
get(key){*}
-
Получает значение.
Имя Тип Описание keystring Имя ключа.
Возвращает:
Значение.
-
getKeys(){Array.<string>}
-
Получает список имён свойств объекта.
Возвращает:
Список имён свойств.
-
getProperties(){NoInfer.<Properties>}
-
Получает объект со всеми именами свойств и их значениями.
Возвращает:
Объект.
-
getRevision(){number} унаследован
-
Получает номер версии этого объекта. При каждом изменении объекта номер его версии увеличивается.
Возвращает:
Версия.
-
on(type, listener){EventsKey | Array<EventsKey>} унаследован
-
Ожидает событие указанного типа.
Имя Тип Описание typestring | Array.<string> Тип события или массив типов событий.
listenerfunction Функция-слушатель.
Возвращает:
Уникальный ключ слушателя. Если первым аргументом передан массив типов событий, возвращается массив ключей.
-
once(type, listener){EventsKey | Array<EventsKey>} унаследован
-
Однократно ожидает событие указанного типа.
Имя Тип Описание typestring | Array.<string> Тип события или массив типов событий.
listenerfunction Функция-слушатель.
Возвращает:
Уникальный ключ слушателя. Если первым аргументом передан массив типов событий, возвращается массив ключей.
-
set(key, value, silent)
-
Задаёт значение.
Имя Тип Описание keystring Имя ключа.
value* Значение.
silentboolean | undefined Обновить без вызова события.
-
setProperties(values, silent)
-
Задаёт набор пар «ключ — значение». Обратите внимание: при этом изменяются существующие свойства и добавляются новые (существующие свойства не удаляются).
Имя Тип Описание valuesPartial.<NoInfer.<Properties>> Значения.
silentboolean | undefined Обновить без вызова события.
-
un(type, listener) унаследован
-
Прекращает ожидание события указанного типа.
Имя Тип Описание typestring | Array.<string> Тип события или массив типов событий.
listenerfunction Функция-слушатель.
-
unset(key, silent)
-
Удаляет свойство.
Имя Тип Описание keystring Имя ключа.
silentboolean | undefined Удалить без вызова события.
© 2005-present, OpenLayers Contributors All rights reserved.Licensed under the BSD 2-Clause License.
https://openlayers.org/en/latest/apidoc/module-ol_Object-BaseObject.html