Size: a a a

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

2020 November 04

ES

Eugene Stepanyuk in React — русскоговорящее сообщество
все понял, после события afterClose в модалке, вызываю метод где меняю текст на null  afterClose={this.closeModal}
Спасибо за подсказку
источник

АТ

Александр Терехов... in React — русскоговорящее сообщество
Всем привет. Может кто сталкивался. Redux Form 7.3.0. AsyncValidation меняет не assyncError а error.
источник

ES

Eugene Stepanyuk in React — русскоговорящее сообщество
подскажите пожалуйста, почему не обновляется свойство state после закрытия модалки?
state = {
       content: {},
}
static getDerivedStateFromProps(props, state) {
       if (props.modalData.id !== state.content.id) {
           return {
               content: props.modalData,
           };
       }
       return null;
   }
closeModal = () => {
       this.setState({ content: {} })
   }
<Modal
                   afterClose={this.closeModal}
               >
источник

A

Archakov 🌚 in React — русскоговорящее сообщество
Eugene Stepanyuk
подскажите пожалуйста, почему не обновляется свойство state после закрытия модалки?
state = {
       content: {},
}
static getDerivedStateFromProps(props, state) {
       if (props.modalData.id !== state.content.id) {
           return {
               content: props.modalData,
           };
       }
       return null;
   }
closeModal = () => {
       this.setState({ content: {} })
   }
<Modal
                   afterClose={this.closeModal}
               >
Скинь весь код модалки и родительского компонента
источник

A

Archakov 🌚 in React — русскоговорящее сообщество
Попробуй через componentDidUpdate
источник

OL

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

OL

Oleksandr Lukhanin in React — русскоговорящее сообщество
Подскажите, почему переключалки работают по-разному?
Вроде бы делают одно и тоже...
Но в случае с prev - поведние не ожиданное
источник

ES

Eugene Stepanyuk in React — русскоговорящее сообщество
Archakov 🌚
Попробуй через componentDidUpdate
render() {
       const { content } = this.state;
       const { modalData, authorsData, executorsData } = this.props;
       return (
           <div>
               <Modal
                   visible={this.props.visible}
                   onOk={this.props.onOk}
                   onCancel={this.props.onCancel}
                   afterClose={this.closeModal}
               >
                   <div style={{ display: 'flex', marginTop: '2rem' }}>
                       <Text>{this.intl("resolutions-input-authorName")}</Text>
                       <Select defaultValue={authorsData ? authorsData.map(item => item.OwnName) : null} style={{ marginLeft: '1rem', width: '100%' }} >
                           {authorsData ? authorsData.map(item => <Option key={item.id} value={item.OwnName} >{item.OwnName}</Option>) : null}
                       </Select>
                   </div>
                   <div style={{ display: 'flex', marginTop: '1rem' }}>
                       <Text>{this.intl("resolutions-textarea-content")}</Text>
                       <TextArea defaultValue={content ? content.Content : null} style={{ marginLeft: '10px' }} />
                   </div>
                   <div style={{ display: 'flex', marginTop: '1rem' }}>
                       <ConfigProvider locale={locale}>
                           <Text>{this.intl("resolutions-datepicker-dataResolution")}</Text>
                           <DatePicker defaultValue={modalData ? moment(modalData.dateK_fact, "DD-MM-YYYY").startOf('date') : null} format={"DD-MM-YYYY"} picker="date" style={{ marginLeft: '10px' }} />
                       </ConfigProvider>
                   </div>
               </Modal>
           </div>
       );

Родитель
<Button type="primary" onClick={() => this.showModal(selectData)} }>{this.intl("resolutions-showButton-name")}</Button>
                       <ModalComponent
                           visible={this.state.visibleModal}
                           onOk={this.handleOk}
                           onCancel={this.handleCancel}
                           onClick={this.handleCancel}
                           modalData={modalData}
                           authorsData={authorsData}
                           executorsData={executorsData} />
источник

ES

Eugene Stepanyuk in React — русскоговорящее сообщество
componentDidUpdate не помогает, вылетает ошибка Maximum update depth exceeded
источник

OL

Oleksandr Lukhanin in React — русскоговорящее сообщество
Oleksandr Lukhanin
Подскажите, почему переключалки работают по-разному?
Вроде бы делают одно и тоже...
Но в случае с prev - поведние не ожиданное
Также не совсем понятен пример из доки с prev:
<button onClick={() => setCount(prevCount => prevCount + 1)}>+</button>

<button onClick={() => setCount(count + 1)}>+</button>

разве setCount не одно и тоже делалет?
источник

BK

Batu Karaev in React — русскоговорящее сообщество
Всем привет! Подскажите как можно организовать группу чекбоксов в реакт? Точнее как организовать стейт
источник

BK

Batu Karaev in React — русскоговорящее сообщество
или у каждого чекбокса должен быть свой стейт
источник

S

Stanislav in React — русскоговорящее сообщество
Batu Karaev
Всем привет! Подскажите как можно организовать группу чекбоксов в реакт? Точнее как организовать стейт
если вам нужен расшаренный стейт, возможно вам подойдет контекст
источник

BK

Batu Karaev in React — русскоговорящее сообщество
это просто задачка которую пытаюсь пилить
источник

И

Иван in React — русскоговорящее сообщество
Oleksandr Lukhanin
Также не совсем понятен пример из доки с prev:
<button onClick={() => setCount(prevCount => prevCount + 1)}>+</button>

<button onClick={() => setCount(count + 1)}>+</button>

разве setCount не одно и тоже делалет?
источник

OL

Oleksandr Lukhanin in React — русскоговорящее сообщество
Спасибо, конечно, попытаюсь проглотить. А бегиннер-френдли подсказок нету?  ))))
источник

V

Vlad in React — русскоговорящее сообщество
Eugene Stepanyuk
получается если после закрытия модального окна, и после следующего открытия нужен уже очищенный text, это получается в state указывать?
Модалки вообще по хорошему должны быть в том же компоненте откуда юзаются
источник

V

Vlad in React — русскоговорящее сообщество
A порталы пофиксят верстку
источник

ES

Eugene Stepanyuk in React — русскоговорящее сообщество
Vlad
Модалки вообще по хорошему должны быть в том же компоненте откуда юзаются
почему это?
источник

V

Vlad in React — русскоговорящее сообщество
Eugene Stepanyuk
почему это?
Ну ты собираешься для каждой модалки в стейте делать поле?) я уже молчу о передаче пропов
источник