【问题标题】:How can i check if user input is empty (react)我如何检查用户输入是否为空(反应)
【发布时间】:2020-09-20 18:35:29
【问题描述】:
  1. 所以我有一个基本的 todo react 应用程序,我如何检查用户是否输入了空值
  2. 我怎样才能确保将空的待办事项添加到待办事项列表中

【问题讨论】:

标签: reactjs react-redux


【解决方案1】:

向我们提供您正在使用的示例代码,我们很容易提出建议。

假设您使用类组件。在addTask 方法中,您可以检查用户是否输入了文本。

export default class App extends React.Component {
  state = {
    list: [],
    task: ""
  };

  addTask = () => {
    const { task, list } = this.state;
    if (!task) {
      alert("Please enter a task");
      return false;
    }

    this.setState({ list: [...list, task] });
  };

  render() {
    const { task, list } = this.state;

    return (
      <>
        <input
          value={task}
          onChange={e => this.setState({ task: e.target.value })}
        />

        <button onClick={this.addTask}>Add task</button>

        <ul>
          {list.map(task => (
            <li>{task}</li>
          ))}
        </ul>
      </>
    );
  }
}

https://codesandbox.io/s/intelligent-yonath-clken?file=/src/App.js:51-736

【讨论】:

【解决方案2】:

我认为您需要的类似于下面的代码, 只需检查修剪的值是否不等于“”,然后将修剪的项目添加到您的列表中。

function addItem() {
if(inputText.trim()!==""){
  setItems(prevItems => {
    return [...prevItems, inputText.trim()];
  });
  setInputText("");
}
}

还要确保保存 index.js,以便在尝试访问本地端口上的应用程序之前重新启动服务器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-26
    • 2021-02-20
    • 1970-01-01
    • 2021-08-12
    • 2021-09-14
    • 1970-01-01
    • 2019-05-23
    • 1970-01-01
    相关资源
    最近更新 更多