несколько кнопок на странице - клик по одной из них должен открывать попап с формой, попап и форму решил сделать на реакте в рамках изучения технологии. 
                  
                  
                  клик по кнопке обрабатывает такой обработчик:
                  
                  
                  applyHandler(event) {
                  
                  
                          const name = event.target.name;
                  
                  
                          import('../../react-components/apply-form.jsx').then(({default: applyForm}) => applyForm(name));
                  
                  
                      }
                  
                  
                  Таким образом я передаю в компонент по какой кнопке был клик
                  
                  
                  export default function(name) {
                  
                  
                      ReactDOM.render(<ApplyForm name = {name}/>, document.querySelector('.dinamic-content'));
                  
                  
                  }
                  
                  
                  изначально в state выставлено в конструкторе isOpen: true
                  
                  
                  constructor(props) {
                  
                  
                          super(props);
                  
                  
                          this.state = {
                  
                  
                              isOpen: true
                  
                  
                          };
                  
                  
                          this.closeComponent = this.closeComponent.bind(this);
                  
                  
                      }
                  
                  
                  closeComponent меняет isOpen на false и подвешен как обработчик клика на кнопку закрытия
                  
                  
                  closeComponent() {
                  
                  
                          this.setState({isOpen: false});
                  
                  
                      }
                  
                  
                  Соответственно после закрытия повторный клик на кнопку ни к чему ни приводит, так как состояние то не менятся...
                  
                  
                  Не могу придумать как связать эти вещи...
                  
                  
                  При вервом клике, когда происходить импорт компонента передать в пропсы массив этих кнопок и на каждую повесить обработчик который будет менять состояние?
                  
                  
                
handlePopup { this.setState({ isOpen: !this.state.isOpen }) } например так.
Хочешь освоить реакт, бери и пиши проект дома у себя на нем, но то что ты делаешь, никакой пользы тебе не принесет
можешь попробовать использовать ReactDOM.unmountComponentAtNode
Обсуждают сегодня