bivarianceHack
strictFunctionTypesをfalseからtrueにした時の段階的な修正時に、一時的にerrorを消すためなどに使う
普通にやってたらまず使うことないと思うmrsekut.icon
code:ts
type Bivariant<M extends (...args: any[]) => any> = {
bivarianceHack(...args: Parameters<M>): ReturnType<M>
これを
code:before.ts
interface Props {
onChange?: (nextValue: string) => void
}
こうする
code:after.ts
interface Props {
onChange?: Bivariant<(nextValue: string) => void>
}
普通にこうすれば良くない?
code:ts
interface Props {
onChange?(nextValue: string): void; // FIXME: bivariant
}
後からgrepする時の目印がなくなるのが怖いからか?