TypeScript
TypeScriptを使っているなかで、気になった挙動に遭遇したので備忘録として残しておきます。 例えば、標準のErrorクラスを拡張して、InvalidError というカスタムエラーのクラスを作るとします。 class InvalidError extends Error { constructor(message: s…
最初にやろうとしたこと interfaceでstaticプロパティを宣言して、その実装クラスで初期化しようとしました。 interface MoneyIF { static readonly CurrencyUnit: string readonly amount: number } class JPY implements MoneyIF { static readonly Curren…
はじめに こんにちは。mongolyyです。 近頃TypeScriptを触っているのですが、先月、次の本が出版されたので読んでみました。 感想を書いていこうと思います。 プロを目指す人のためのTypeScript入門 安全なコードの書き方から高度な型の使い方まで Software …
はじめに 「Reactを使っている場合はjsxをトランスフォームするためにbabelを使用するのはわかるが、React + TypeScriptの組み合わせを使っている場合、tscでトランスパイルすれば、tsxのトランスフォームもtscがしくてれて、babel使わなくていいんじゃない…
何がしたいか? TypeScriptにおいて、とある型の一部のプロパティのみを必須にした型を作りたいとします。 次の例で言うと、とある型(User)を元に、一部のプロパティ(age)を必須にした新たな型(AdultUser)を作りたいとします。 type User = { name: st…