Size: a a a

React — русскоговорящее сообщество

2021 March 13

NS

Nikolay Smagin in React — русскоговорящее сообщество
Sergei
Ну смотри, мне нравится делать так, компонент такого типа состоит из трех файлов. conteiner, presenter, index.
conteiner - для получение данных с сервера и управлением того, что показывать.
presenter -   для того что показывать.
index - для удобного импорта.

Только стейт логики будет в контейнере, а пресентер пропсами получать какой табик показывать.
Я в логике еще новичек, а тем более в получении данных с сервера) Сейчас вдумывался в твои слова, сложно пока что понять всё это)
источник

М

Максим in React — русскоговорящее сообщество
Kraft Punk
Тип того )
Так тебе все же надо стили вставлять или класс?
источник

АМ

Андрей Маргиев... in React — русскоговорящее сообщество
Kraft Punk
Тип того )
А что у тебя в className в devTools показывает?
источник

NS

Nikolay Smagin in React — русскоговорящее сообщество
Sergei
Ну смотри, мне нравится делать так, компонент такого типа состоит из трех файлов. conteiner, presenter, index.
conteiner - для получение данных с сервера и управлением того, что показывать.
presenter -   для того что показывать.
index - для удобного импорта.

Только стейт логики будет в контейнере, а пресентер пропсами получать какой табик показывать.
Я решил сделать компонент,
В нем будет хидер с вкладками и  буду передавать верстку одного условно говоря <p> ... </p> в зависимости от состояния
источник

АМ

Андрей Маргиев... in React — русскоговорящее сообщество
Максим
Так тебе все же надо стили вставлять или класс?
ему надо классы вставить в className
источник

KP

Kraft Punk in React — русскоговорящее сообщество
источник

М

Максим in React — русскоговорящее сообщество
Если классы - просто массив строк создай с названием классов создай и все. И лучше не пушить, реакт не любит мутабельность без доп. либ
источник

KP

Kraft Punk in React — русскоговорящее сообщество
Вот что я хочу сделать
источник

АМ

Андрей Маргиев... in React — русскоговорящее сообщество
Понятна проблема теперь. А что у тебя в className в devTools показывает?
источник

АМ

Андрей Маргиев... in React — русскоговорящее сообщество
После клика
источник

М

Максим in React — русскоговорящее сообщество
const style = ['map']
дальше все как есть

function handleClick(){
setClasses([...classes, 'fullscreen'])
}
источник

KP

Kraft Punk in React — русскоговорящее сообщество
Ща компуктер перезапущу посмотрю )
источник

АМ

Андрей Маргиев... in React — русскоговорящее сообщество
Максим
Если классы - просто массив строк создай с названием классов создай и все. И лучше не пушить, реакт не любит мутабельность без доп. либ
так это и есть строки (если он импортировал стили как import styles from './styles.css', так можно потом классы из css забирать как styles.myClass
источник

KP

Kraft Punk in React — русскоговорящее сообщество
Там строки
источник

М

Максим in React — русскоговорящее сообщество
Андрей Маргиев
так это и есть строки (если он импортировал стили как import styles from './styles.css', так можно потом классы из css забирать как styles.myClass
Ну на его фото не вижу как он импортировал. Возможно проблема в том, что он мутирует пушем т.к. в стейте у него этот массив, который он мутирует и реакт не видит изменений
источник

NS

Nikolay Smagin in React — русскоговорящее сообщество
Sergei
Ну смотри, мне нравится делать так, компонент такого типа состоит из трех файлов. conteiner, presenter, index.
conteiner - для получение данных с сервера и управлением того, что показывать.
presenter -   для того что показывать.
index - для удобного импорта.

Только стейт логики будет в контейнере, а пресентер пропсами получать какой табик показывать.
Подскажите, а контент блока и TabbedMenu должны быть в одном блоке?
источник

АМ

Андрей Маргиев... in React — русскоговорящее сообщество
Максим
Ну на его фото не вижу как он импортировал. Возможно проблема в том, что он мутирует пушем т.к. в стейте у него этот массив, который он мутирует и реакт не видит изменений
Ну можно попробовать обновлять через создание нового массива со спред оператором, как ты показал, может поможет
источник

NS

Nikolay Smagin in React — русскоговорящее сообщество
Или контентные блоки передавать в children?
источник

KP

Kraft Punk in React — русскоговорящее сообщество
Спасибо
источник

KP

Kraft Punk in React — русскоговорящее сообщество
Ща попробую
источник