Я знаю, что этому вопросу уже три месяца, но у меня была та же проблема с анимацией изменения размера сетки в интерфейсе React и Material на основе переменной в состоянии. Я делал переход к содержанию главной страницы, чтобы плавно изменять размеры, когда боковая панель расширяется и убирается. Я сделал это с помощью встроенного стиля элементов Grid.
Мой код:
<Grid container>
<Grid
item xs={this.state.expandMainContent === true ? 1 : 2}
style={{transition: theme.transitions.create("all", {
easing: theme.transitions.easing.sharp,
duration: theme.transitions.duration.leavingScreen,
})}} >
<Sidebar />
</Grid>
<Grid
item xs={this.state.expandMainContent === true ? 11 : 10}
style={{transition: theme.transitions.create("all", {
easing: theme.transitions.easing.sharp,
duration: theme.transitions.duration.leavingScreen
})}}>
<MainContent />
</Grid>
</Grid>
Я сделал мой при клике, тогда как ваш при наведении, но он все равно должен работать.