Как установить несколько точек останова для элемента сетки в пользовательском интерфейсе материалов в React?

У меня есть макет HOC с сеткой. Внутри у меня есть 4 компонента виджета с элементами сетки. Я хочу, чтобы эти компоненты отображались следующим образом:

  • большие экраны: все 4 в 1 ряд
  • средние экраны: 2 в ряд, 2 столбца
  • маленькие экраны: 1 виджет на всю ширину, 4 строки

Итак, я настроил это так:

<Grid item xs = {12} sm = {2} md = {3}>
  ...content
</Grid>

Однако, когда я изменяю размер экрана, он сразу меняется с 4 на 1.

Я попытался перенастроить тему в своем index.js:

const theme = createMuiTheme({
  breakpoints: {
    values: {
    md: 1100
    }
  } ,
  typography: {
    useNextVariants: true
  }
});

ReactDOM.render(
  <Provider store = {store}>
    <MuiThemeProvider theme = {theme}>
      <App />
    </MuiThemeProvider>
  </Provider>, document.getElementById('root')
);

Что еще я могу сделать? Как я могу заставить его работать?

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
1
0
1 422
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

У вас есть sm = {2}, что означает, что каждая строка разбивается на 6 столбцов (ваши виджеты теперь занимают 4/6 столбцов на экранах sm).

Ваши виджеты, вероятно, стали еще меньше в размере при переходе между md => sm, но вы этого не заметили, а затем они вернулись к 1

Вам понадобится sm = {6}, чтобы иметь 2 виджета в строке, вам не нужно настраивать точки останова тем.

Правильно, это то, что я пропустил! Большое тебе спасибо!

Igal 24.01.2019 10:19

Другие вопросы по теме