首页 > 解决方案 > react-edittext中的'onSave()'函数如何传递两个参数?

问题描述

我使用这个库:https://www.npmjs.com/package/react-edittext

当我有

onSave = (val) => {
  console.log (val)
} 

在 console.log 我有一个可编辑的值。我也在尝试传递idonSave.

`onSave = (val, todoId) => {
  console.log (val, todoId)
} ` 

但这不起作用,第二个值是undefined. 如何传递两个值?

此处演示:https ://stackblitz.com/edit/react-btc2df

import EdiText from 'react-editext';

class Example extends Component {
  constructor(props) {
    super(props);

    this.state = {
      todos: [
        {
          "id": 1,
          "title": "delectus aut autem",
          "completed": false
        },
        {
          "id": 2,
          "title": "delectus aut autem",
          "completed": false
        }
      ]
    }
  }

  onSave = (val, todoId) => {
    console.log(val, todoId)
  }

  render () {
    return (
      <div className="container">
        {this.state.todos.map((todo, index) => {
          return <EdiText
                  key={todo.id}
                  type="text"
                  value={todo.title}
                  onSave={() => this.onSave(todo.id)}
                />
        })}
      </div>
    )
  }
}

标签: javascriptreactjs

解决方案


您忘记传递先前的参数:

onSave={val => this.onSave(val , todo.id)}

推荐阅读