MobX:更新输入字段中的值

Mat*_*s M 4 javascript reactjs mobx

我使用一个简单的输入字段,它应该由@observable 值控制:

<div>
    <input value={this.props.appState.myValue} onChange={this.handleChange}/>
    value: {this.props.appState.myValue}
</div>
Run Code Online (Sandbox Code Playgroud)

将 myValue 更新为 undefined 后,显示值发生变化,但输入字段中的值保持不变。

初始状态:

[initial]
value: initial
Run Code Online (Sandbox Code Playgroud)

更新后:

[initial]
value:
Run Code Online (Sandbox Code Playgroud)

Tho*_*lle 5

我怀疑您没有将组件变成观察者。试试这个例子

@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>
    );
  }
}
Run Code Online (Sandbox Code Playgroud)