Reactjs 物料界面文本字段不可编辑

Reactjs 物料界面文本字段不可编辑,reactjs,react-native,material-design,material-ui,Reactjs,React Native,Material Design,Material Ui,我使用材质UI和文本类型为TextField的字段文本。但是,当我在电子邮件字段中被扣押时,扣押不会显示在屏幕上,并且电子邮件字段中的值不会改变。它始终保持相同的值 句柄更改不起作用。未传递到手柄的值更改保持不变 <TextField fullWidth={true} className={classes.margin} label={<FormattedMessage id="LoginTemplate.email" defaultMessage="Email" />

我使用材质UI和文本类型为TextField的字段文本。但是,当我在电子邮件字段中被扣押时,扣押不会显示在屏幕上,并且电子邮件字段中的值不会改变。它始终保持相同的值

句柄更改不起作用。未传递到
手柄的值更改
保持不变

<TextField fullWidth={true}
  className={classes.margin}
  label={<FormattedMessage id="LoginTemplate.email" defaultMessage="Email" />}
  id="email"
  ref="email"
  name="eamil"
  type="email"
  value={authentification.email}
  onChange={this.handleChange}
  InputProps={{
    endAdornment: (
      <InputAdornment position="end">
        <Email className={classes.inputIconsColor} />
      </InputAdornment>
    ),
  }}
/>

这是代码。纠正我,那有什么问题
提前感谢。

要更改值,您需要更改状态(在屏幕或外部)

例如(性能不佳,但仅作解释): 如果存在,则添加到您的cunstrunctor中:

constructor(props) {
  super(props);
  this.state = {
    emailInputText: undefined //or empty string
  }
}
然后将
TextField
component
value
onChange
props更改为:

value={this.state.emailInputText}
onChange={(text) => this.setState({emailInputText: text})}

我会考虑删除<代码> REF=电子邮件'< /代码> ./P>


要更改值,需要更改状态(在屏幕或外部)

例如(性能不佳,但仅作解释): 如果存在,则添加到您的cunstrunctor中:

constructor(props) {
  super(props);
  this.state = {
    emailInputText: undefined //or empty string
  }
}
然后将
TextField
component
value
onChange
props更改为:

value={this.state.emailInputText}
onChange={(text) => this.setState({emailInputText: text})}

我会考虑删除<代码> REF=电子邮件'< /代码> ./P>