Недавно начал использовать Typescript и что-то, в чем я не уверен.
Я использую пакет npm azure-storage
и специально вызываю метод doesBlobExist
:
blobService.doesBlobExist(containerName, blobName, (callbackResult: ErrorOrResult<BlobService.BlobResult>) => {
//Want callbackResult.response here
});
ЭтоdoesBlobExist
(функция из пакета npm) выглядит следующим образом:
doesBlobExist(container: string, blob: string, callback: ErrorOrResult<BlobService.BlobResult>): void;
И тип ErrorOrResult - это интерфейс, который имеет это:
interface ErrorOrResult<TResult> {
(error: Error, result: TResult, response: ServiceResponse): void
}
В чем я не уверенгде я вызываю функцию, я надеялся, что смогу использовать этот интерфейс и сделать:
callbackResult.response
, как в интерфейсе, однако callbackResult
продолжает возвращаться как null
.Если посмотреть на него, он будет установлен как error: Error
из интерфейса.
Так возможно ли на самом деле делать то, что я хочу выше, или мне нужно использовать эту функцию как:
blobService.doesBlobExist(containerName, blobName, (error, result, response) => {
//i.e. specify the 3 items directly in the interface
});