相关疑难解决方法(0)

在React.js表单组件中使用state或refs?

我从React.js开始,我想做一个简单的表单,但在文档中我找到了两种方法.

第一种是使用参考文献:

var CommentForm = React.createClass({
  handleSubmit: function(e) {
    e.preventDefault();
    var author = React.findDOMNode(this.refs.author).value.trim();
    var text = React.findDOMNode(this.refs.text).value.trim();
    if (!text || !author) {
      return;
    }
    // TODO: send request to the server
    React.findDOMNode(this.refs.author).value = '';
    React.findDOMNode(this.refs.text).value = '';
    return;
  },
  render: function() {
    return (
      <form className="commentForm" onSubmit={this.handleSubmit}>
        <input type="text" placeholder="Your name" ref="author" />
        <input type="text" placeholder="Say something..." ref="text" />
        <input type="submit" value="Post" />
      </form>
    );
  }
});
Run Code Online (Sandbox Code Playgroud)

第二个是使用状态的阵营部件内部:

var TodoTextInput = …
Run Code Online (Sandbox Code Playgroud)

reactjs

108
推荐指数
4
解决办法
6万
查看次数

在react-select中获取onChange的选定值

我正在使用反应选择包并使用自定义选项数组来填充数据(即自定义标签等)

我已经看到了一些解决方案,他们没有使用选项道具来设置值,或者只是使用默认数组模式来填充数据并设置并获取它onChange,但是在我的情况下我无法获取值:

  • 如果我设置value属性,它不会让我选择选项

  • 如果我传递相同的(option) => option.phaseText) onChange,它将以字符串形式返回

    const HandelChange = (obj) => {
        console.log(obj);
    };
    const [dataPhase, setDataPhase] = useState([
        { phaseID: 1, phaseText: "Item 1" },
        { phaseID: 2, phaseText: "Item 2" },
        { phaseID: 3, phaseText: "Item 3" },
        { phaseID: 4, phaseText: "Item 4" },
        { phaseID: 5, phaseText: "Item 5" },
    ]);
    
    <Select
       isSearchable
        options={dataPhase}
        getOptionLabel={(option) => option.phaseText}
        getOptionValue={(option) => option.phaseText}
        className="diMultiSelect"
        classNamePrefix="diSelect"
        styles={styles}
        maxMenuHeight={150}
        value={(option) => …
    Run Code Online (Sandbox Code Playgroud)

reactjs react-select

1
推荐指数
1
解决办法
7295
查看次数

标签 统计

reactjs ×2

react-select ×1