从Flow来看,这过去很好,但在TS中显然不是这样,我在网上找不到合适的示例:
type Props = {
fnA(string, string | object): void;
// ^ Unexpected token, expected ","
fnB(string, any): void; // No problems with this
}
为函数参数编写联合类型的正确方法是什么?
答案 0 :(得分:2)
这就是TypeScript语法的独特之处:在函数类型中,必须为所有参数命名:
set.seed(24)
df_Temp <- data.frame(ATYPE = sample(letters[1:5], 20, replace = TRUE),
AFTER_ADM = sample(0:1, 20, replace = TRUE), CHRGES = rnorm(20))
在第二个功能type Props = {
fnA(a: string, b: string | object): void;
fnB(string, any): void; // string, any are parameter names, not types
}
中,fnB
和string
不能被混淆地解释为类型,而是具有隐式any
类型的参数名称-如果您有{{ 1}}选项打开,您将得到一个错误消息。