为了账号安全,请及时绑定邮箱和手机立即绑定

无法在 React 中编辑输入元素的值

无法在 React 中编辑输入元素的值

小怪兽爱吃肉 2022-05-22 15:48:50
我的 React 项目有问题,我有一个如下所示的输入元素,但我无法编辑输入的文本。我只能在删除 value 属性时编辑输入文本,但我想要一个默认值。  <div className="form-group">       <label>Email:</label>        <input            className="form-input"           type="text"           value="l.h.thuong181@gmail.com"           name="email">       </input>  </div>
查看完整描述

3 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

如果您有一个不受控制的组件,您可能希望使用该defaultValue属性而不是value(请参阅此参考



查看完整回答
反对 回复 2022-05-22
?
当年话下

TA贡献1890条经验 获得超9个赞

您可以使用useRef或defaultValue


import React, { useRef, useEffect } from "react";


const input = useRef();

useEffect(() => {

    input.current.value = "l.h.thuong181@gmail.com";

}, []);


<input ref={input} className="form-input" type="text" name="email" />`


查看完整回答
反对 回复 2022-05-22
?
萧十郎

TA贡献1815条经验 获得超13个赞

这是一个示例代码如何在反应中使用输入


class NameForm extends React.Component {

  constructor(props) {

    super(props);

    this.state = {value: ''};


    this.handleChange = this.handleChange.bind(this);

    this.handleSubmit = this.handleSubmit.bind(this);

  }


  handleChange(event) {

    this.setState({value: event.target.value});

  }


  handleSubmit(event) {

    alert('A name was submitted: ' + this.state.value);

    event.preventDefault();

  }


  render() {

    return (

      <form onSubmit={this.handleSubmit}>

        <label>

          Name:

          <input type="text" value={this.state.value} onChange={this.handleChange} />

        </label>

        <input type="submit" value="Submit" />

      </form>

    );

  }

}


查看完整回答
反对 回复 2022-05-22
  • 3 回答
  • 0 关注
  • 274 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信