相关疑难解决方法(0)

无法输入React输入文本字段

我正在尝试我的第一部分React.js并且很早就被我难倒...我有下面的代码,它会将搜索表单转换为<div id="search"></div>.但是在搜索框中输入什么也不做.

据推测,通过道具和状态上下都会丢失一些东西,这似乎是一个常见的问题.但我很难过 - 我看不出有什么遗漏.

var SearchFacet = React.createClass({
  handleChange: function() {
    this.props.onUserInput(
      this.refs.searchStringInput.value
    )
  },
  render: function() {
    return (
      <div>
        Search for:
        <input
          type="text"
          value={this.props.searchString}
          ref="searchStringInput"
          onchange={this.handleChange} />
      </div>
    );
  }
});

var SearchTool = React.createClass({
  render: function() {
    return (
      <form>
        <SearchFacet 
          searchString={this.props.searchString}
          onUserInput={this.props.onUserInput}
         />
        <button>Search</button>
      </form>
    );
  }
});

var Searcher = React.createClass({
  getInitialState: function() {
    return {
      searchString: ''
    }
  },

  handleUserInput: function(searchString) {
    this.setState({
      searchString: searchString
    })
  },

  render: function() {
    return …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs

95
推荐指数
5
解决办法
9万
查看次数

无法在输入字段中输入

我有以下代码:

    constructor(props) {
        super(props);
        this.state = {
            search: "",
            value: "",
            username:'',
            email:'',
            password: '',
        };

        this.onChange = this.onChange.bind(this);
        this.onSubmit = this.onSubmit.bind(this);
    }

...
...

    onChange(e) {
        this.setState(
            {[e.target.name]: e.target.value})
    }

...
...

<input type="password" placeholder="Password"
onChange={e => this.onChange(e)}
value={ this.state.password }
                                                />
Run Code Online (Sandbox Code Playgroud)

但是我无法在密码字段中输入。如果删除该value={ this.state.password }零件,则可以在该字段中键入内容,但是当更改此字段时,状态似乎没有更新。

问题是什么?

reactjs

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

标签 统计

reactjs ×2

javascript ×1