Поделиться через


SPEvent class

Представляет событие платформы, на которое могут подписаться компоненты.

Комментарии

Примерами событий в веб-приложении могут быть: пользователь, нажимающий кнопку, переход системы на другую страницу или элемент, добавляемый или удаляемый из абстрактной коллекции. SharePoint Framework представляет события с помощью экземпляров объекта SPEvent, по одному для каждого типа события. Объект SPEvent обычно предоставляется как свойство связанного класса (например, кнопка, которую можно нажать). Если компонент заинтересован в событии, он вызывает add() для регистрации обратного вызова обработчика событий, который будет вызываться при каждом возникновении события. Обработчик получает параметр SPEventArgs, который может предоставить дополнительные сведения о том, что произошло. Это аналогично событиям модели DOM в браузере. Отличием main является функция ISPEventObserver, которая отслеживает, какой компонент подписан на каждое событие, и автоматически отменяет подписку на обработчик при удалении компонента.

При возникновении события все обработчики вызываются синхронно. Порядок вызова обработчиков событий не указан. Обратный вызов обработчика событий должен перехватывать все исключения, возникающие во время обработки; Неуявленное исключение не помешает выполнению других обработчиков, но оно будет сообщаться как о проблеме со связанным компонентом.

Конструктор для этого класса помечен как внутренний. Сторонний код не должен напрямую вызывать конструктор или создавать подклассы, расширяющие класс SPEvent.

Методы

add(observer, eventHandler)

Регистрирует обратный вызов, который будет вызываться при возникновении события.

remove(observer, eventHandler)

Отменяет регистрацию обратного вызова, зарегистрированного с помощью add().

Сведения о методе

add(observer, eventHandler)

Регистрирует обратный вызов, который будет вызываться при возникновении события.

add(observer: ISPEventObserver, eventHandler: (eventArgs: TEventArgs) => void): void;

Параметры

observer
ISPEventObserver

Указывает объект, подписывающийся на событие. При удалении объекта обработчик события будет автоматически удален. Этот объект также используется для диагностических целей, например для определения того, не удалось ли обработчику событий перехватывать исключение.

eventHandler

(eventArgs: TEventArgs) => void

Функция обратного вызова, которая будет вызываться при возникновении события.

Возвращаемое значение

void

Комментарии

Один и тот же объект может добавить несколько обработчиков событий в одно и то же событие. Так как BaseComponent реализует интерфейс ISPEventObserver, веб-часть или расширение могут передавать себя в качестве наблюдателя. Это приведет к автоматическому отмене подписки обработчика событий при удалении веб-части или расширения.

remove(observer, eventHandler)

Отменяет регистрацию обратного вызова, зарегистрированного с помощью add().

remove(observer: ISPEventObserver, eventHandler: (eventArgs: TEventArgs) => void): void;

Параметры

observer
ISPEventObserver

Это должен быть тот же наблюдатель, который был передан функции add().

eventHandler

(eventArgs: TEventArgs) => void

Обработчик событий, который требуется удалить; это должен быть тот же экземпляр объекта, который был передан функции add().

Возвращаемое значение

void

Комментарии

Если обработчик событий уже удален или он никогда не был добавлен, этот метод не будет действовать.