TypeScript里怎么正确声明一个可选的函数参数?
我写了一个函数,想让第二个参数是可选的,但TS一直报错说类型不匹配。试过加问号和默认值都不行,是不是哪里写错了?
比如下面这样:
function greet(name: string, title?: string) {
return <code>${title ? title + ' ' : ''}${name}</code>;
}
greet('Alice', 'Dr');
调用时明明传了两个参数,为什么还提示“Expected 1 arguments, but got 2”?
greet函数了,或者有重载声明冲突。试试把这段代码单独放一个文件里跑:
要是还报错就检查下全局类型声明或者有没有同名函数,这语法绝对没问题。