← Усі теми

Питання на співбесіді з Vue (Middle) з відповідями

75 запитань для співбесіди з теми Vue (Middle) - з правильними відповідями, поясненнями й посиланнями на документацію.

Пройти цей тест
  1. 1.Чому цей спостерігач не спрацьовує?
  2. 2.Чим watchEffect відрізняється від watch?
  3. 3.Як скасувати застарілий запит, коли id, за яким спостерігають, швидко змінюється (Vue 3.5+)?
  4. 4.Що робить { deep: true } у спостерігача?
  5. 5.Коли shallowRef кращий за ref?
  6. 6.Що робить toRefs?
  7. 7.Що таке записуваний computed?
  8. 8.Чому мутувати стан всередині гетера computed - помилка?
  9. 9.Як зробити, щоб колбек watch одразу виконався й з поточним значенням?
  10. 10.Коли виконується спостерігач із flush: 'post'?
  11. 11.Що дають модифікатори defineModel?
  12. 12.Як застосувати fallthrough-атрибути до внутрішнього елемента, а не до кореня?
  13. 13.Що таке scoped slot?
  14. 14.Як зберегти наданий стан реактивним, але заборонити нащадкам його мутувати?
  15. 15.Навіщо використовувати символ InjectionKey замість рядка для provide/inject?
  16. 16.Що робить defineAsyncComponent?
  17. 17.Що робить defineExpose у <script setup>?
  18. 18.Що дає реактивна деструктуризація props із 3.5?
  19. 19.Як типізувати події компонента в TypeScript?
  20. 20.Що таке composable?
  21. 21.Які проблеми міксинів розв'язують composables?
  22. 22.Як composable має приймати аргументи, які можуть бути ref'ами, гетерами чи звичайними значеннями?
  23. 23.Чому composables треба викликати синхронно в <script setup>, а не в колбеку?
  24. 24.Що відбувається, коли в <script setup> є await верхнього рівня?
  25. 25.Як написати локальну власну директиву в <script setup>?
  26. 26.Що таке плагін Vue?
  27. 27.Що робить <KeepAlive>?
  28. 28.Навіщо рендерити модальне вікно через <Teleport to="body">?
  29. 29.Як <Transition name="fade"> анімує елемент?
  30. 30.Яку проблему тут розв'язує nextTick?
  31. 31.Як ліниво завантажити компонент маршруту?
  32. 32.Як захистити маршрути, що потребують авторизації?
  33. 33.Чому сторінка не оновлюється під час переходу з /users/1 на /users/2?
  34. 34.Що робить props: true у визначенні маршруту?
  35. 35.Чому в продакшені з createWebHistory перезавантаження /about дає 404?
  36. 36.Чим відрізняються router.push і router.replace?
  37. 37.Як рендеряться вкладені маршрути?
  38. 38.Чому деструктуризація стора Pinia втрачає реактивність і як це виправити?
  39. 39.Чим відрізняються setup-стори й option-стори в Pinia?
  40. 40.Що дає store.$patch?
  41. 41.Чи можуть дії Pinia бути асинхронними?
  42. 42.Як використати стор поза компонентом, наприклад у guard'і роутера?
  43. 43.Чому цей гетер Pinia не кешується?
  44. 44.Як один стор Pinia може використовувати інший?
  45. 45.Як зі scoped-стилів стилізувати елемент всередині дочірнього компонента?
  46. 46.Що робить v-bind() всередині <style>?
  47. 47.Як перехоплювати помилки з компонентів-нащадків?
  48. 48.Навіщо await'ити дії користувача у Vue Test Utils?
  49. 49.Як протестувати компонент, що використовує стори Pinia?
  50. 50.Який інструмент перевіряє типи у файлах .vue, зокрема шаблони, у CI?
  51. 51.Як анімувати додавання, видалення й переставлення елементів списку?
  52. 52.Чому локальний імпорт кращий за глобальну реєстрацію через app.component()?
  53. 53.Як задати опції компонента на кшталт inheritAttrs: false у <script setup>?
  54. 54.Як відстежувати кілька джерел одним колбеком?
  55. 55.Що робить { once: true } у watcher'а (Vue 3.4+)?
  56. 56.Як зупинити watcher до розмонтування компонента?
  57. 57.Як створити ref, що оновлюється з дебаунсом?
  58. 58.Ви мутуєте масив усередині shallowRef. Чому представлення не оновлюється і як це виправити?
  59. 59.Що <Suspense> робить із компонентом, у якого top-level await у <script setup>?
  60. 60.Як попередити користувача перед виходом із маршруту з незбереженими змінами?
  61. 61.Які є два поширені способи завантажити дані для маршруту?
  62. 62.Як зберігати фільтри в query URL і реагувати на їхні зміни?
  63. 63.Що таке іменовані представлення у Vue Router?
  64. 64.Чим alias маршруту відрізняється від redirect?
  65. 65.Як дізнатися, чи відбулася навігація після router.push()?
  66. 66.Чи є в setup-стора $reset(), як в option-стора?
  67. 67.Як логувати кожну дію Pinia-стора та її помилки?
  68. 68.Що дає VueUse?
  69. 69.Який вигляд мають CSS Modules у SFC?
  70. 70.Як стилізувати вміст слота, переданий батьком, зі scoped-стилів компонента?
  71. 71.Коли корисний shallowMount у Vue Test Utils?
  72. 72.Навіщо в тесті компонента await flushPromises() після кліку по кнопці, що викликає API?
  73. 73.Що має відбуватися з фокусом після клієнтської навігації в SPA заради доступності?
  74. 74.Як запустити збирання Vite з налаштуваннями з .env.staging?
  75. 75.Чому продакшен-збірки мають використовувати production-режим Vue?