У меня очень большое приложение для взаимодействия с mobx +, когда многие компоненты вызывают те же действия в магазине. Например, «удалить фотографию» можно вызвать из списка фотографий или из модального. Но перед выполнением действия у меня есть, например, чтобы показать подтверждение modal ...mobx - просмотр логики в магазинах
Я получаю это решение, но похоже, что я подключаю логин данных с логикой вида ...
class PhotoStore {
@observable photos;
@action destroy(photo) {
if (currentUser.isGuest) {
modalStore.open('NoGuest')
return
}
modalStore.openConfirm(() => {
// some datalogic
api.delete('/photos/'+photo.id).then(() => {
notificationStore.showSuccess('your photo was deleted!')
})
})
}
}
const PhotoView = observer(({photo}) => {
return <div onClick={() => photoStore.destroy(photo)}>...</div>
})
Что вы делаете? это нормально?
спасибо большое!
выглядит хорошо. Может быть, опечатка. должен быть 'photoStore.destroy (фото)' – vijayst
также родительский компонент для PhotoView должен быть '@ observer'. – vijayst
да, это просто пример;) Я исправлю это –