169 похожих чатов

Привет, подскажите пожалуйста. Передаю данные с инпутов в разных child'ах

в родитель, под каждый child нужно в родителе создавать новую функцию для передачи или можно как-то сократить?

16 ответов

7 просмотров

Можно как то сократить

Eugene-Stepanyuk Автор вопроса
Dmitriy Shuleshov
Можно как то сократить

было бы интересно узнать как)

Eugene Stepanyuk
было бы интересно узнать как)

Был бы код, разговор был бы более предметным

Eugene-Stepanyuk Автор вопроса
Dmitriy Shuleshov
Был бы код, разговор был бы более предметным

Есть несколько child'ов, внутри которых таблица и по клику на строку заполняются инпуты, часть кода: return ( <Row> <Col lg={24} md={24} sm={24} > <Input value={rowValue} style={{ marginLeft: '8px' }} /> <Table dataSource={tableTypeDocDocuments} columns={columns} onRow={record => { return { onClick: () => { this.onClickRow(record); this.props.updateData(record.ID); } }} /> </Col> </Row> в родителе создаю функцию для передачи данных updateData = (data) => { this.setState({ componentData: data }) } и передаю в компонент <Component updateData={this.updateData} /> так вот, нужно такие функции создавать под каждый child, которых не мало или можно как-то сократить?

Eugene Stepanyuk
Есть несколько child'ов, внутри которых таблица и ...

В updateData ты можешь аргументом передавать не только данные но и мета информацию, с какого чайлда пришла инфа

Eugene-Stepanyuk Автор вопроса
Dmitriy Shuleshov
В updateData ты можешь аргументом передавать не то...

даже не сталкивался с таким, что включает в себя мета информацию? что-то загуглил не нашел ответа, либо не правильно понял

Eugene Stepanyuk
даже не сталкивался с таким, что включает в себя м...

updateData = ({ name, data }) => { this.setState({ componentData: {...this.state.componentData, [name]: data} }) } Мета информация это общий термин. В примере выше параметр data - данные, name - метаданные

Eugene-Stepanyuk Автор вопроса
Dmitriy Shuleshov
updateData = ({ name, data }) => { this.se...

понял, в метаданных я могу передать любой признак, хоть и строку?

Eugene Stepanyuk
понял, в метаданных я могу передать любой признак,...

Зависит от вашего кейса, который я так и непонял, но вцелом да

Eugene-Stepanyuk Автор вопроса
Dmitriy Shuleshov
Зависит от вашего кейса, который я так и непонял, ...

но все равно не понял, как эти данные не будут перезаписываться, если использовать одну функцию? если я передаю данные с одного компонента в родитель, после с другого, они же перезапишутся?

Eugene Stepanyuk
но все равно не понял, как эти данные не будут пер...

Делайте песочницу рабочую и будем разбираться, а так мы просто сотрясаем воздух безсмысленно

Eugene-Stepanyuk Автор вопроса
Eugene Stepanyuk
https://codesandbox.io/s/hardcore-worker-xjiek?fil...

Зачем ты разделил firstcomponent и секонд? Это один и тот же копонент с разными данными

Eugene Stepanyuk
https://codesandbox.io/s/hardcore-worker-xjiek?fil...

https://codesandbox.io/s/eager-chatelet-uxtel?file=/src/App.js

Eugene-Stepanyuk Автор вопроса
Dmitriy Shuleshov
Зачем ты разделил firstcomponent и секонд? Это од...

накидал на быструю руку, на самом деле большинство компонентов разные и все с разными данными, но суть и так понятна, со всех них нужно собрать выбранные данные в родителе

Eugene-Stepanyuk Автор вопроса
Dmitriy Shuleshov
https://codesandbox.io/s/eager-chatelet-uxtel?file...

тююю) там обьект принимало, а я два параметра передаю, ох уж эта невнимательность, спасибо!

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
Кибер Бомж
8
Карта сайта