Warum müssen ich die folgenden Kompilierungsfehler mit dieser Typoskript Methode erhalten, die ich schrieb:Typoskript Fehler mit Promise.reject
getFile(path: string): Promise<FileEntry> {
return this.file.resolveLocalFilesystemUrl(path)
.then(entry => {
if (entry.isFile) {
return <FileEntry>entry;
} else {
let err = new FileError(13);
err.message = 'input is not a file';
return Promise.reject(err);
}
});
}
ich den Fehler:
Argument of type '(entry: Entry) => Promise<never> | FileEntry' is not assignable to parameter of type '(value: Entry) => PromiseLike<never>'. Type 'Promise<never> | FileEntry' is not assignable to type 'PromiseLike<never>'. Type 'FileEntry' is not assignable to type 'PromiseLike<never>'. Property 'then' is missing in type 'FileEntry'.
Die Definition für resolveLocalFilesystemUrl
ist als folgt:
resolveLocalFilesystemUrl(fileUrl: string): Promise<Entry>;
FileEntry
eine Unterklasse vonist, daher die gegossene Rückkehr. Der Fehler liegt jedoch bei Promise.reject
.
Wenn ich auf die folgende meine ablehnen Linie ändern, es funktioniert:
return Promise.reject<FileEntry>(err);
Benötige ich Promise.reject(...)
zurückzukehren und was ist die korrekte Umsetzung?