打字稿提供的参数不匹配,调用对象的
问题描述:
的任何签字所以我有这样的功能:打字稿提供的参数不匹配,调用对象的
function foo(a, b, c, d, e) {
// something creative
}
当我这样称呼它:
foo(1, 2, 3, 4, 5);
它工作正常。
...但是,当我这样称呼它:
const lastTwo = [4, 5];
foo(1, 2, 3, ...lastTwo);
打字稿尖叫说:
error TS2346: Supplied parameters do not match any signature of call target.
我如何克服呢?
答
的原因是,你的方法签名的参数AA具体的数字,但你用可变数量的参数调用它。您可以通过更改签名来解决此问题。
function foo(a, b, c, ...remaining) {
// something creative
}
const lastTwo = [4, 5];
foo(1, 2, 3, ...lastTwo);