Я следил за этой статьей , чтобы разрешить мне загружать файл непосредственно в хранилище BLOB-объектов Azure.Но в настоящее время я получаю ошибку
"this.blobStorage.createBlobServiceWithSas не является функцией"
После подтверждения того, что я не пропустил инструкцию, я посмотрел на источниккод для учебника в GitHub , я увидел разницу
AppModule.ts в учебнике
declare var AzureStorage: IAzureStorage;
@NgModule({
declarations: [AppComponent],
imports: [BrowserModule],
providers: [
BlobStorageService,
{
provide: BLOB_STORAGE_TOKEN,
useValue: AzureStorage.Blob
}
],
bootstrap: [AppComponent]
})
export class AppModule {}
AppModule в GitHub
export function azureBlobStorageFactory(): IBlobStorage {
return window['AzureStorage'].Blob;
}
@NgModule({
declarations: [AppComponent],
imports: [BrowserModule],
providers: [
BlobStorageService,
{
provide: BLOB_STORAGE_TOKEN,
useFactory: azureBlobStorageFactory
}
],
bootstrap: [AppComponent]
})
export class AppModule {}
Я соответствующим образом обновил свой код, но все равно не повезло.
Затем я добавил точку останова, чтобы остановить выполнение до вызова this.blobStorage .createBlobServiceWithSas
.На этом этапе я запускаю window['AzureStorage']
в консоли, и он возвращает неопределенное значение.
Может кто-нибудь сообщить мне, что я делаю неправильно?
РЕДАКТИРОВАТЬ:
Вangular.json Я добавил нужный файл.Поэтому, если я запускаю window['AzureStorage'].Blob
в консоли, я получаю объект, который могу использовать, но я все равно получаю ту же ошибку, что и ранее в моей базе кода
{
...
"projects": {
"Client": {
...
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:browser",
"options": {
...
"scripts": [
"src/assets/azure-storage/azure-storage.blob.js"
]
},
...
}