#react-native #mobx #mobx-react #layout-animation
#react-native #mobx #mobx-реагирует #макет-анимация
Вопрос:
Когда-то рекомендовалось использовать componentWillReact()
для запуска анимации макета в ответ на изменения наблюдаемых значений, например:
componentWillReact() {
LayoutAnimation.configureNext(LayoutAnimation.Presets.spring);
}
Однако, componentWillReact()
была удалена в mobx-react@6.
Какая рекомендуемая замена? Мой класс observable ничего не должен знать о своем наблюдателе, поэтому я ищу аналогичное решение, основанное на событиях.
Спасибо!
Ответ №1:
Если я правильно понял ваш вопрос, и у вас есть возможность использовать функциональный компонент, попробуйте useLayoutEffect
перехват вместо componentWillReact
, объявите наблюдаемое значение как его deps и вызовите LayoutAnimation.configureNext
обратный вызов перехвата, вот так:
useLayoutEffect(() => {
LayoutAnimation.easeInEaseOut();
}, [store.something]);