Для того чтобы сделать инпут disabled при изменении состояния (state) в React, вы можете использовать условное свойство disabled у компонента input, которое будет зависеть от состояния вашего компонента.
В React, состояние компонента обычно хранится в объекте, доступном через this.state. При изменении состояния, вы вызываете this.setState() для обновления состояния и перерисовки компонента.
Пример кода:
import React, { Component } from 'react'; class MyComponent extends Component { constructor(props) { super(props); this.state = { inputDisabled: false // начальное значение disabled }; } handleChange = () => { this.setState({ inputDisabled: !this.state.inputDisabled }); // обновляем состояние } render() { return ( // в зависимости от значения this.state.inputDisabled, добавляем disabled к инпуту // который делает его недоступным для изменения <div> <input type="text" disabled={this.state.inputDisabled} /> <button onClick={this.handleChange}>Изменить состояние</button> </div> ); } } export default MyComponent;
В этом примере, у нас есть компонент MyComponent с состоянием inputDisabled, которое изначально равно false. Мы имитируем состояние изменения в методе handleChange, который меняет значение inputDisabled на его противоположность с помощью оператора !. В методе render() мы добавляем disabled={this.state.inputDisabled} к инпуту, чтобы включить/отключить его в зависимости от значения состояния. При клике на кнопку "Изменить состояние", состояние inputDisabled будет изменяться, что приведет к изменению disabled у инпута.
Таким образом, при изменении состояния, инпут будет автоматически делаться disabled или доступным для редактирования.