
TypeScript với Vue
Hỗ trợ TypeScript trong Vue 3, defineComponent, PropType, type inference, generic components, strict mode
1Vai trò chính của defineComponent trong Vue 3 với TypeScript là gì?
Vai trò chính của defineComponent trong Vue 3 với TypeScript là gì?
Câu trả lời
defineComponent kích hoạt type inference của TypeScript cho các options của component. Nếu không có hàm này, ngữ cảnh this sẽ bị coi là any trong Options API. Nó đảm bảo props, data, computed và các method được gán kiểu chính xác một cách tự động.
2Tại sao nên dùng PropType khi khai báo props phức tạp với runtime declaration?
Tại sao nên dùng PropType khi khai báo props phức tạp với runtime declaration?
Câu trả lời
PropType là một utility type của Vue cho phép ép kiểu cho prop trong quá trình khai báo runtime. Object as PropType Book đảm bảo book được gán kiểu chính xác là Book thay vì Object chung chung. Điều này cải thiện tự động hoàn thành và an toàn kiểu mà không cần dùng script setup với generic types.
3Sự khác biệt giữa script setup và script setup với lang='ts' đối với type inference là gì?
Sự khác biệt giữa script setup và script setup với lang='ts' đối với type inference là gì?
Câu trả lời
script setup với lang='ts' kích hoạt TypeScript và cho phép type inference tự động mà không cần defineComponent. Props được định nghĩa bằng defineProps sẽ tự động được gán kiểu, refs có inference đầy đủ, và lỗi TypeScript được phát hiện tại thời điểm biên dịch. Nếu không có lang='ts', sẽ không có bất kỳ kiểm tra kiểu nào được thực hiện.
Làm thế nào để gán kiểu đúng cho một ref có thể null ban đầu trong TypeScript?
Ưu điểm chính của các generic component với script setup generic trong Vue 3.3+ là gì?
+19 câu hỏi phỏng vấn
Các chủ đề phỏng vấn Vue.js / Nuxt.js khác
Kiến thức nền tảng JavaScript
JavaScript hiện đại (ES6+)
Kiến thức cơ bản về Vue
Component Vue
Vue Router
Pinia State Management
Vuex (Legacy)
Composition API
Tính reactive của Vue
Kiến thức cơ bản về Nuxt
Data Fetching trong Nuxt
SSR & SSG trong Nuxt
Server Routes Nuxt
Module Nuxt
Composables trong Vue
Form & Validation Vue
Quản lý trạng thái Nuxt
Testing trong Vue
Triển khai Nuxt & CI/CD
Hiệu năng Vue
Các mẫu nâng cao trong Vue
Xác thực Nuxt
SEO với Nuxt
Quốc tế hóa trong Nuxt
Kiến trúc Vue
Bảo mật Nuxt
Hệ sinh thái Vue
Di chuyển Vue 2→3 & Nuxt 2→3
Nắm vững Vue.js / Nuxt.js cho lần phỏng vấn tiếp theo
Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.
Bắt đầu miễn phí