September 10, 2019
react-native-cli の good first issue に取り組んでいた時に発見した話
Good first issue の内容は、Flow で書かれていたコードの TS 化である。
複数の引数がある関数にて、第 2 引数は使うが、第 1 引数は使いたくないという時にどうすればいいか。
例えば以下のようなコードを考える
function example(dummyParam: any, name: string) {
return `Hello ${name}`
}
tsconfig 上で noUnusedParams が true になっている場合、第一引数を使用しなければ TS でエラーになってしまう。
そもそもそういう設計にするなという話は置いといて、既存 Class の関数を override する時など、こういうケースは結構起こりうる。
使用しない引数の頭に_
を追加すれば、noUnusedParams が true の場合でもその引数には適用されない。
function example(_dummyParam: any, name: string) {
return `Hello ${name}`
}
一番最初の文字が_
であればいいので、_
だけにしとけば問題ない。
function example(_: any, name: string) {
return `Hello ${name}`
}
使用する時は、override している為など、わざわざ使わない引数が存在する理由をコメントで書いて置くと良いだろう。