TypeScript lambda函数带有可选参数

时间:2012-10-06 21:19:47

标签: typescript

在定义接受可选参数的lambda函数时遇到问题。奇怪的是,如果我使用完整的“函数”语法,匿名函数可以工作,但lambda简写/箭头语法会产生如下错误:

  • 当前范围中不存在名称“a”
  • 提供的参数与调用目标的任何签名
  • 都不匹配
  • 预期')'

示例:

(function (a, b?) => { console.log(a, b); })("a"); // OK
((a, b?) => { console.log(a, b); })("a", "b");     // Errors
((a, b) => { console.log(a, b); })("a", "b");      // OK

2 个答案:

答案 0 :(得分:9)

这是编译器中的一个错误,现在正在修复[v0.8]。 Lambdas目前提供带有optional和rest参数的错误消息。如果这是阻塞问题,请使用long函数语法。

答案 1 :(得分:3)

目前在胖箭头lambda表达式中存在可选参数注释的错误。