デフォルト値のある分割代入をした時に書き方がわからなくて詰まったのでメモ
はじめは分割代入の型を必須{ hoge: number }
として書いていたせいでプロパティがない!って言われていたけど
オプション{ hoge?: number }
にしてあげればよし
よく考えれば当たり前だった
class MyClass {
hoge: number
public constructor({ hoge = 1 }: { hoge?: number } = {}) {
this.hoge = hoge
}
}
const m1 = MyClass()
const m2 = MyClass({hoge: 1})