在打字稿中的类函数中不能使用promise吗?

时间:2017-09-19 09:55:22

标签: javascript typescript ecmascript-6

使用class选项我计划在typescript中创建一个包含CRUD操作函数的类。 (像CreateStudent(),updateStudent(),listStudents(),ViewStudent())所以首先我创建了一个listStudent函数

class student {
    listStudent (apiUrl:string) {
        this.usePromise(apiUrl).then(function(){
            console.log("api call completed");
        });
    }

    usePromise<T>(apiUrl:string):Promise<T> {
        let p: Promise<T>;
        p = new Promise(() => {
        var request = new XMLHttpRequest();
        request.onreadystatechange = function() {
            ...
        }
            ...
    });
    return p;
    }
}
let s:student = new student();
s.listStudent("api/list.php");

这里最初我试过这个

usePromise(apiUrl:string):Promise {}

我说错误

  

泛型类型'承诺'需要1个争论

所以我读到了泛型类型,然后我在usePromise函数中实现了它。现在我在承诺对象创建时遇到错误new Promise()

  

Promise只引用一个类型,但在这里被用作变量

  • 为什么会出现这个错误,我正确地声明了promise作为该类型的返回类型创建对象?
  • 而不是这样,无论我在任何类函数中创建一个promise对象,我都会得到相同的错误?

0 个答案:

没有答案