TypeScript 版本: 2.0.3 / nightly (2.1.0-dev.201xxxxx)
代码
// A *self-contained* demonstration of the problem follows...
const fn_prim = () => 3;
const fn_obj = () => {
val: 3
};
预期行为:
我希望它编译得很好。 调用时fn_prim
应返回 3,调用时fn_obj
应返回{ val: 3 }
。
实际行为:
val:
上的“未使用标签”错误
最有用的评论
TypeScript 遵循 ES 规范,并且根据规范,您的第二个示例是箭头函数,其中 body 是包裹在
{
}
的函数体,因此val: 3
被解释为带有标签val
标记语句3
表达式语句。 为了使其成为返回对象文字的箭头函数,您需要将其包装在括号中:相关链接: MDN:箭头函数,部分
Returning object literals