typescript API订阅上出现意外标记“)”

bnl4lu3b  于 2023-03-19  发布在  TypeScript
关注(0)|答案(1)|浏览(129)

我在一个Angular 应用程序中调用了这个API

async upload(file: FileToUpload) { // this is where the error occurs
    file.id = UUID.UUID();

    this.delegates.fileManager.uploadFile(file).subscribe({
      next: async () => {
        this.files = await (await this.delegates.fileManager.getFilesAsync()).files;
        console.log(this.files);
      }
    });
  }

这个函数应该上传文件并且用另一个API调用刷新文件列表。这个方法在删除函数上起作用

async deleteFile(file: FileToUpload) {
    this.delegates.fileManager.deleteFileById(file.id).subscribe({
      next: async () => {
        this.files = await (await this.delegates.fileManager.getFilesAsync()).files;
      }
    })
  }

在上传的过程中,列表不会立即刷新,因为我必须刷新页面才能看到新条目,即使this.files = await (await this.delegates.fileManager.getFilesAsync()).files;不在这里,它也会抛出ERROR SyntaxError: Unexpected token ')'

rm5edbpk

rm5edbpk1#

不确定我是否喜欢subscribeawait的不匹配,我会尝试所有subscribe或所有async/await

upload(file: FileToUpload) { // this is where the error occurs
    file.id = UUID.UUID();
    this.delegates.fileManager.uploadFile(file).subscribe({
      next:() => {
        this.delegates.fileManager.getFilesAsync().subscribe({
           next: (results) => {
              this.files = results.files;
           } 
        })
      }
    });
  }

相关问题