javascript – 如何使用打字稿与原生的ES6承诺

我是一个完整的初学者打字稿,我想知道是否可能使用ES6承诺在Typescript和我必须做,让他们工作。我运行节点0.11.14,我在编译期间得到一个错误“找不到名称’Promise’”
当前lib.d.ts没有promise在它定义,所以你需要一个额外的定义文件,这就是为什么你正在得到编译错误。

你可以使用(如@elclanrs说)使用es6-promise包和来自DefinitelyTyped的定义文件:es6-promise definition

你可以这样使用它:

var p = new Promise<string>((resolve, reject) => { 
    resolve('a string'); 
});

编辑你可以使用它没有定义,当定位ES6(使用TypeScript编译器) – 注意,你仍然需要Promise存在于运行时的当然(所以它不会在旧浏览器中工作:))
添加/编辑以下到您的tsconfig.json:

"compilerOptions": {
    "target": "ES6"
}

编辑2
当TypeScript 2.0出来的东西会改变一点(虽然上面仍然有效),但是定义文件可以直接用npm安装,如下所示:

npm install –save @ types / es6-promise – source

编辑3
更新答案与更多信息使用类型。

创建一个只有{}作为内容的package.json文件(如果你没有package.json)。
调用npm install –save @ types / es6-promise和tsc –init。第一个npm install命令将更改package.json以包括es6-promise作为依赖项。 tsc –init将为您创建一个tsconfig.json文件。

您现在可以在您的typescript文件var x:Promise< any&gt ;;中使用promise。
执行tsc -p。编译您的项目。你应该没有错误。

http://stackoverflow.com/questions/27573365/how-to-use-typescript-with-native-es6-promises

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:javascript – 如何使用打字稿与原生的ES6承诺