Vue.js / Nuxt.js

VueでのTypeScript

Vue 3のTypeScriptサポート、defineComponent、PropType、type inference、generic components、strict mode

22 面接問題·
Senior
1

Vue 3でTypeScriptを使う際、defineComponentの主な役割は何ですか?

回答

defineComponentはコンポーネントオプションに対するTypeScriptのtype inferenceを有効にします。この関数がないと、Options APIではthisコンテキストがanyとして扱われてしまいます。これによりprops、data、computed、メソッドが自動的に正しく型付けされることが保証されます。

2

runtime declarationで複雑なpropsを宣言する際に、なぜPropTypeを使うのですか?

回答

PropTypeはVueのutility typeで、runtime宣言時にpropsの型をキャストできるようにします。Object as PropType Bookとすることで、bookが汎用的なObjectではなくBookとして正しく型付けされることが保証されます。これにより、汎用型を使ったscript setupを必要とせずに、オートコンプリートと型安全性が向上します。

3

type inferenceの観点で、script setupとlang='ts'付きのscript setupの違いは何ですか?

回答

lang='ts'付きのscript setupはTypeScriptを有効にし、defineComponentなしで自動的なtype inferenceを可能にします。definePropsで定義されたpropsは自動的に型付けされ、refsは完全なinferenceを持ち、TypeScriptのエラーはコンパイル時に検出されます。lang='ts'がない場合、型チェックは一切行われません。

4

TypeScriptで初期値がnullになり得るrefを正しく型付けするにはどうすればよいですか?

5

Vue 3.3以降における script setup generic を用いたジェネリックコンポーネントの主な利点は何ですか?

+19 面接問題

次の面接に向けてVue.js / Nuxt.jsをマスター

すべての問題、flashcards、技術テスト、コードレビュー演習、面接シミュレーターにアクセス。

無料で始める