Я занимаюсь созданием первой итерации API. Одна из необходимых вещей - это настраиваемые события для тех, кто собирается использовать наш API. У меня возникли проблемы с поиском хорошей документации о том, как строить такие вещи.Определение пользовательских событий для API-интерфейса TypeScript
У нас есть интерфейс для нашего API, где я надеюсь определить эти пользовательские события.
interface AddinApi{
/**
* Event fires when a document is opened.
*
* @param {string} The url of the of the document you are listening on.
*
* @return The url of the opened document
*/
documentOpenedEvent(url: string): void;
}
Я знаю, что здесь что-то отсутствует. Нужно ли мне определять какой-либо пользовательский объект, который реализует/расширяет какой-либо класс событий в качестве параметра?
Желаемая функциональность этого события будет заключаться в том, что пользователь может присоединить это событие к определенному документу, и когда этот документ будет открыт, событие будет срабатывать.
Это может быть вызвано следующим образом. Это более или менее псевдокод.
var api : AddinApi;
// Define document object with some url/guid
var docGUID = "123456;
function onDocumentOpened(url: documentGuid){
// do something now that the document has been opened
}
api.documentOpenedEvent = onDocumentOpened;
// Now this function fires off when the document is opened.
api.documentOpenedEvent(docGuid);
Это не очень понятно. Можете ли вы опубликовать несколько примеров того, как будет выглядеть код вызова? –