我的项目目前正在使用Angular RC4进行Ionic2 Beta 11。问题是我需要链接如下(我使用的插件返回一个promise):
this.dataService.loginWithFacebookNative()
.then(
result => {
console.log(result)
return result;
},
error => {
console.log(error);
if (error == 'cordova_not_available') return this.dataService.loginWithFacebook();
return Promise.reject(error.message || error); // Here is the ts error
})
.then(value => {
console.log(value);
// Logic if login was a success
})
.catch(error => {
console.log(error);
if (error) {
this.error = error;
}
})
虽然App本身正在按预期工作,但是Typescript返回了一个错误,说明了
[ts] Cannot find name 'Promise'
我不知道从哪里获得Promise。
答案 0 :(得分:0)
我不知道从哪里获得Promise。
最快的方法是将lib
设置为es6,dom
进行编译。
https://basarat.gitbooks.io/typescript/content/docs/types/lib.d.ts.html#lib-option
答案 1 :(得分:0)
有两个选项
答案 2 :(得分:0)
如果您的经验找不到名称'Promise'。,大多数情况下您已经更改了基本设置中的某些文件,或者您可能没有成功完成节点包安装。 Angular2不再使用打字包。
溶液:
克隆以下存储库https://github.com/angular/quickstart 在项目目录中运行npm install并确保它成功完成 现在将您的应用程序项目文件夹复制并配置到克隆的新文件夹中,现在这将完美地运行。