javascript - 如何清除有值(value)的输入?

标签 javascript reactjs redux

我有一个输入,其中填充了从存储到 Redux 状态的 API 返回的值:

state = {
  popoverScenarioName: null,
}

scenarioNameChange = (e) => (
  this.setState({popoverScenarioName: e.target.value})
)

// ....

<StyledInput
  placeholder="Scenario Name"
  onChange={(e) => scenarioNameChange(e)}
  onFocus={(e) => e.target.select()}
  value={this.state.scenarioName || database.inputs.scenarioName}
/>

当我点击输入并按下退格键以清除整个字段时,它总是使用 database.inputs.scenarioName 重新填充值。

我试过将状态设置为类似

state = {
  popoverScenarioName: null || this.props.database.inputs.scenarioName,
}

但这似乎也不起作用。我的另一个猜测是编写一个 dispatch 来直接更改 database.inputs.scenarioName

最佳答案

state = {
   popoverScenarioName: null,
}

scenarioNameChange = (e) => (
   this.setState({popoverScenarioName: e.target.value})
 )

 clickHandler = () => {
    //...doing something here
    setState({popoverScenarioName: null})
 }

<StyledInput
  placeholder="Scenario Name"
  onChange={(e) => scenarioNameChange(e)}
  onFocus={(e) => e.target.select()}
  value={this.state.popoverScenarioName}
 />

<button onClick={this.clickHandler}>add todo</button>

您的点击处理程序在哪里?
单击后清除您的表单

这个来自 redux 状态“this.props.database.”?

关于javascript - 如何清除有值(value)的输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53658854/

相关文章:

javascript - 简单的功能来分离按钮

javascript - 使用 AJAX 获取或发布

javascript - 当我失去焦点或移至下一个字段时, react 选择会清除我键入的值

javascript - 使用 React Redux 和 Firebase 按值过滤表

javascript - 如何访问 <img> 标签中来自 ng-controller 的 'src' 数据?

javascript - 删除 JavaScript 中的特殊字符

ruby-on-rails - react 组件未在我的 View 上呈现

javascript - 将嵌套对象的所有值设置为 false,除了一个

javascript - 在 Redux 中传播属性

javascript - 将 redux saga 与 next.js 一起使用是反模式吗?