Meteor - реактивная переменная createContainer
Я пытаюсь назначить реактивные данные для const date
здесь, так что продолжительное значение распространяется на мой компонент через this.props.date
Я использую усиление для сохранения выбранной пользователем даты в локальном хранилище браузера.
export default createContainer(() => {
// Amplify Store
const date = amplify.store( "date") || '';
return { date};
}, sidePanel);
Я вижу, что значение изменения изменяется в локальном хранилище браузера, но this.props.date
не обновляется.
Есть идеи, если это приемлемый подход?
Я знаю, что следует использовать Redux или подобную библиотеку, но это будет слишком много для этого небольшого проекта, над которым я работаю.
Спасибо
1 ответ
После некоторого чтения я узнал, что метеорные корабли с несколькими реактивными источниками данных:
- Переменные сеанса
- Запросы к базе данных по коллекциям
- Meteor.status
- Метод ready() в дескрипторе подписки
- Meteor.user
- Meteor.userId
- Meteor.loggingIn
То, что я делал в моем вопросе, использовало createContainer
проверить нереактивный источник данных.
Meteor предоставляет API для создания собственного настраиваемого реактивного источника данных.
Тем не менее, в качестве простого обходного пути, я использовал этот пакет, который расширяет переменную Session в метеоре и сохраняет ее в локальном хранилище браузера через Amplify.
Стоит отметить, что Amplify поставляется с пабом / подсистемой, которая проста в использовании и может помочь подключить все внешние события.