无法在onclick事件处理程序中传递参数-React

瓦沙里·沙(Vaishali Shah)

我发现一个问题,当我单击“删除”按钮时,它错误地指出handleDelete未定义。但是,我已经定义了它。有人可以建议我解决该问题吗?

我试图将删除按钮放在地图功能之外,并且可以正常工作。但是,当我在地图功能中使用删除按钮时,却没有。

    import React from "react";
    import "./App.css";
    import { v1 as uuid } from "uuid";

    export default class App extends React.Component {
      constructor(props) {
        super(props);
        this.state = {
          list: [],
          item: "",
          id: uuid(),
        };
      }
      handleChange = (e) => {
        this.setState({
          item: e.target.value,
        });
      };
      handleSubmit = (e) => {
        e.preventDefault();
        const newItem = {
          item: this.state.item,
          id: this.state.id,
        };

        const newList = [...this.state.list, newItem];
        this.setState({
          list: newList,
          item: "",
          id: uuid(),
        });
      };
      handleDelete = (id) => {
        console.log("delete button pressed");
      };
      clearList = () => {
        this.setState({
          list: [],
        });
      };
      render() {
        return (
          <>
            <form onSubmit={this.handleSubmit}>
              <input
                placeholder="enter list name"
                value={this.state.item}
                onChange={this.handleChange}
              />
              <button type="submit">add item</button>
            </form>
            <ul>
              {this.state.list.map(function (element, id) {
                return (
                  <li key={id}>
                    <h5>{element.item}</h5>
                    <button type="button">edit</button>
                    <button onClick={() => this.handleDelete(id)}>delete</button>
                  </li>
                );
              })}
            </ul>
            <button type="button" onClick={this.clearList}>
              clear list
            </button>

          </>
        );
      }
    }
大城屋

在地图中使用箭头功能,您将缺少词法绑定。

import React from "react";
import "./App.css";
import { v1 as uuid } from "uuid";

export default class App extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      list: [],
      item: "",
      id: uuid(),
    };
  }
  handleChange = (e) => {
    this.setState({
      item: e.target.value,
    });
  };
  handleSubmit = (e) => {
    e.preventDefault();
    const newItem = {
      item: this.state.item,
      id: this.state.id,
    };

    const newList = [...this.state.list, newItem];
    this.setState({
      list: newList,
      item: "",
      id: uuid(),
    });
  };
  handleDelete = (id) => {
    console.log("delete button pressed");
  };
  clearList = () => {
    this.setState({
      list: [],
    });
  };
  render() {
    return (
      <>
        <form onSubmit={this.handleSubmit}>
          <input
            placeholder="enter list name"
            value={this.state.item}
            onChange={this.handleChange}
          />
          <button type="submit">add item</button>
        </form>
        <ul>
          {this.state.list.map((element, id) => {
            return (
              <li key={id}>
                <h5>{element.item}</h5>
                <button type="button">edit</button>
                <button onClick={() => this.handleDelete(id)}>delete</button>
              </li>
            );
          })}
        </ul>
        <button type="button" onClick={this.clearList}>
          clear list
        </button>

      </>
    );
  }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在 React 中参数化事件处理程序

来自分类Dev

在React中使用onClick事件处理程序

来自分类Dev

无法将参数传递到React处理函数中

来自分类Dev

在React的onClick函数中传递事件对象

来自分类Dev

在React的onClick函数中传递事件对象

来自分类Dev

React / JS-如何将其他参数传递给onClick处理程序

来自分类Dev

传递参数 onClick,React

来自分类Dev

React:事件处理程序中为null

来自分类Dev

在React事件处理程序中此值

来自分类Dev

错误 this.style 在传递给 react 组件的事件处理程序中未定义

来自分类Dev

如何将参数传递给过滤器方法并使用不同的参数在 React onClick 事件中调用函数?

来自分类Dev

在React中将事件处理程序作为道具传递。

来自分类Dev

在React中将事件处理程序作为道具传递。

来自分类Dev

React中的OnClick事件

来自分类Dev

警告:React.js Web应用程序中的未知事件处理程序属性`onClick`

来自分类Dev

React:如何在事件处理程序中调用react钩子?

来自分类Dev

在构造函数中绑定函数时,如何在ES6 React中向事件处理程序添加参数

来自分类Dev

在React中单击div时传递事件参数

来自分类Dev

如何确定哪个组件在React中触发事件处理程序?

来自分类Dev

React中事件处理程序的怪异行为

来自分类Dev

如何在React子组件中设置事件处理程序

来自分类Dev

获取事件处理程序中对React组件的引用

来自分类Dev

在React的事件处理程序中获取组件的prop

来自分类Dev

在React中同步事件处理程序以进行搜索

来自分类Dev

如何确定哪个组件在React中触发事件处理程序?

来自分类Dev

为什么React在事件处理程序中找不到“ this”

来自分类Dev

在React组件事件处理程序中未定义“ this”

来自分类Dev

React如何处理传递给事件处理程序的函数/回调?

来自分类Dev

React Router无法传递参数

Related 相关文章

  1. 1

    在 React 中参数化事件处理程序

  2. 2

    在React中使用onClick事件处理程序

  3. 3

    无法将参数传递到React处理函数中

  4. 4

    在React的onClick函数中传递事件对象

  5. 5

    在React的onClick函数中传递事件对象

  6. 6

    React / JS-如何将其他参数传递给onClick处理程序

  7. 7

    传递参数 onClick,React

  8. 8

    React:事件处理程序中为null

  9. 9

    在React事件处理程序中此值

  10. 10

    错误 this.style 在传递给 react 组件的事件处理程序中未定义

  11. 11

    如何将参数传递给过滤器方法并使用不同的参数在 React onClick 事件中调用函数?

  12. 12

    在React中将事件处理程序作为道具传递。

  13. 13

    在React中将事件处理程序作为道具传递。

  14. 14

    React中的OnClick事件

  15. 15

    警告:React.js Web应用程序中的未知事件处理程序属性`onClick`

  16. 16

    React:如何在事件处理程序中调用react钩子?

  17. 17

    在构造函数中绑定函数时,如何在ES6 React中向事件处理程序添加参数

  18. 18

    在React中单击div时传递事件参数

  19. 19

    如何确定哪个组件在React中触发事件处理程序?

  20. 20

    React中事件处理程序的怪异行为

  21. 21

    如何在React子组件中设置事件处理程序

  22. 22

    获取事件处理程序中对React组件的引用

  23. 23

    在React的事件处理程序中获取组件的prop

  24. 24

    在React中同步事件处理程序以进行搜索

  25. 25

    如何确定哪个组件在React中触发事件处理程序?

  26. 26

    为什么React在事件处理程序中找不到“ this”

  27. 27

    在React组件事件处理程序中未定义“ this”

  28. 28

    React如何处理传递给事件处理程序的函数/回调?

  29. 29

    React Router无法传递参数

热门标签

归档