请考虑以下代码:
Promise.resolve('hello')
.then(a => console.log(a))
.catch(() => console.log("error"))
.then(() => console.log("ok"));
这给我带来了一个非常烦人的错误:
提供的参数与调用目标的任何签名都不匹配: 预期的0个参数但是用1个参数调用
请注意,我只为第一个.then(...)
获取此信息,然后第二个显示没有问题。
仅供记录;代码工作和输出
hello
ok
也许我还应该提一下它实际编译。我在Visual Studio 2017中看到了错误。当我转到然后的定义时,它会打开 lib.es6.d.ts 。使用TypeScript 2.8.3的webpack 4进行编译。在Visual Sudio中,我安装了TypeScript 2.8.1(无法找到2.8.3)
如果有人能向我解释为什么会这样。甚至更好,如何摆脱它;非常感谢。
答案 0 :(得分:0)
我遇到了同样的问题,正如@JBC所说的那样,这是由ReSharper引起的。就我而言,我正在运行一个相当旧的版本(2017.1.1),因此将其更新为最新版本(或完全禁用它)可以解决该问题。