Vue · Senior · Запитання 8 з 75

Як зробити один спільний стан composable для всіх компонентів, що його використовують?

export const useOnlineStatus = createSharedComposable(() => {
  const online = ref(navigator.onLine);
  useEventListener(window, "online", () => (online.value = true));
  return { online };
});

Пояснення

Кожен звичайний виклик створює новий стан і слухачі. createSharedComposable із VueUse рахує підписників і зупиняє scope, коли розмонтовується останній компонент.

Де почитати

Помилка в запитанні

Vue · Senior · запитання 8

Перевірте себе

Пройдіть тест Vue · Senior: запитання й варіанти перемішуються, а наприкінці - розбір помилок.

Пройти цей тест