javascript - promise.then 中的 Typescript 编译错误

标签 javascript typescript promise

我正在尝试在 typescript 中使用 promises。我使用 tsd 安装 es6-promise 并将引用添加到我的文件中。它在很大程度上理解 promise ,但我很难用 then 链接它们。

function foo() : Promise<any> {
  var p: Promise<any> = Promise.resolve();
  var x: Promise<any> = Promise.resolve();
  p = p.then(x);
  return p;
}

p.then(x) 的位置给我这个:

error TS2345: Argument of type 'Promise' is not assignable to parameter of type '(value: any) => {} | Thenable<{}>'.

这是 type definition 中的一个错误吗? ,还是我用错了?

最佳答案

p.then(x);

这是无效的。 x 需要发挥作用。在这里你有它作为一个 promise 。

关于javascript - promise.then 中的 Typescript 编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30066211/

相关文章:

javascript - ReactJS - 绑定(bind)焦点

javascript - angularjs orderBy 无法正常工作

reactjs - 使用 react-apollo,如何使用 TypeScript 在同一组件中定义 2 个突变?

reactjs - 通过排序/分页向表格添加骨架效果

javascript - 函数中的返回语句

javascript - 覆盖或扩展 JavaScript 中的闭包函数

javascript - 通过 v-on 调用函数内部的函数 :click

reactjs - 提交后重置 React-Select (Unform)

javascript - 从 promise 中获取数据而不是返回 promise

javascript - Node js 中的多个 Promise