Closed3

[TypeScript]共用体型に (string & {}) を含めた時の挙動を調べる

Keita HinoKeita Hino

(string & {})が含まれるとどうなる?

結論から言うと、列挙されているリテラル以外を入力してもエラーになりませんでした。

こちらの挙動について調べていたところ、 (string & {})について言及している記事がありました。
https://nanto.asablo.jp/blog/2021/09/11/9422241

記事を読んでこのように解釈しました。

HTMLInputTypeAttributeで下記を実現したかった。

  • 自動補完を効かせたい
  • 将来、input要素に非互換な変更があってもエラーにしたくない

上記を満たすため、HTMLInputTypeAttribute(string & {})を追加している✍️

試してみたところ、確かに自動補完が効く & 列挙されている文字列リテラル以外を設定してもエラーにならなかった。なるほど〜👀

このスクラップは2022/06/01にクローズされました