Как получить ценность магазина из другого магазина?


person lukaszpolowczyk    schedule 04.05.2020    source источник


Ответы (1)


Используйте get(store) для доступа к значению магазинов.

Пример:

import {get, writable} from 'svelte/store'

const myStore = writable(41)

const value = get(myStore)

Если вы обращаетесь к магазину из .svelte компонента, есть ярлык. Просто добавьте к имени магазина префикс $, например. const value = $myStore.

person joshnuss    schedule 04.05.2020
comment
Минус этого решения: это работает путем создания подписки, считывания значения и отмены подписки. Поэтому это не рекомендуется в путях с горячим кодом. svelte.dev/docs#get - person lukaszpolowczyk; 04.05.2020
comment
Альтернативы: 1) Используйте store.subscribe(callback), обратный вызов будет уведомлен при изменении значения. 2) Используйте производное хранилище derived([storeA, storeB, ...], callback), когда любое зависимое хранилище изменяет ваш обратный вызов, может создавать новое (совокупное) значение - person joshnuss; 05.05.2020