У меня есть компонент реакции, и я хочу анимировать его при изменении состояния компонента.
Я использую useReducer
const [state, dispatch] = useReducer(reducer, initialState);
. Затем при нажатии я обновляю state.isOpen
с false на true или наоборот. В том же компоненте у меня есть это
const wrapperStyles = useSpring({
transform: state.isOpen ? 'translate3d(0, 0, -300px)' : 'translate3d(0, 0, 0)'
});
Наконец, компонент потребляет его вот так <StyledWrapper style={wrapperStyles}>
Я ожидаю, что преобразование будет применено и изменено при изменении состояния, но это не так. Понятия не имею, что делаю не так, я следую их простым инструкциям на сайте.
Изменить: я пробовал использовать opacity
вместо transform
, и он отлично работает, поэтому я делаю что-то не так с преобразованием css?