最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - MobX: Update value in input field - Stack Overflow

programmeradmin11浏览0评论

I use a simple input field which should be controlled by an @observable value:

<div>
    <input value={this.props.appState.myValue} onChange={this.handleChange}/>
    value: {this.props.appState.myValue}
</div>

After updating myValue to undefined the displayed value changes, but the value in the input field keeps the same value.

Initial state:

[initial]
value: initial

After update:

[initial]
value:

I use a simple input field which should be controlled by an @observable value:

<div>
    <input value={this.props.appState.myValue} onChange={this.handleChange}/>
    value: {this.props.appState.myValue}
</div>

After updating myValue to undefined the displayed value changes, but the value in the input field keeps the same value.

Initial state:

[initial]
value: initial

After update:

[initial]
value:
Share Improve this question edited Dec 27, 2016 at 15:25 Tholle 113k22 gold badges208 silver badges197 bronze badges asked Dec 27, 2016 at 14:58 Matthias MMatthias M 15k18 gold badges98 silver badges129 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 5

I would suspect you are not making your ponent into an observer. Try this example:

@observer
class App extends React.Component {
  handleChange = (e) => {
    this.props.appState.myValue = e.target.value; 
  };
  render() {
    const { appState } = this.props;
    return (
      <div>
        <input value={appState.myValue} onChange={this.handleChange} />
        value: {appState.myValue}
      </div>
    );
  }
}
发布评论

评论列表(0)

  1. 暂无评论