发送两个值onClick React

时间:2017-02-09 18:25:18

标签: reactjs ecmascript-6

我找到了this回答,用于向函数onClick发送单个值。是否有可能送两个?我试过了

        <button value={valueA, valueB } onClick={ () => this.toggleEditing.bind(this, valueA, valueB) } className="slds-button slds-button--icon">
        <svg className="slds-button__icon" aria-hidden="true">
          <use xlinkHref={closeIcon}></use>
        </svg>
          <span className="slds-assistive-text">Cancel</span>
        </button>

但我在toggleEdit()中的第二个参数是鼠标事件。

3 个答案:

答案 0 :(得分:1)

是的,您可以在onClick事件中传递n个值,如下所示:

<button value={valueA, valueB } onClick={this.toggleEditing.bind(this, valueA, valueB,...) }
    className="slds-button slds-button--icon">
        <svg className="slds-button__icon" aria-hidden="true">
            <use xlinkHref={closeIcon}></use>
        </svg>
        <span className="slds-assistive-text">Cancel</span>
</button>

toggleEditing(value1, value2, ....., event){
    console.log(value1,value2,....);
}

或者像这样使用arrow function

onClick={(e) => this.toggleEditing(valueA, valueB,...)}

答案 1 :(得分:0)

  

但我在toggleEdit()中的第二个参数是鼠标事件。

因此:

  onClick={ (valueB) => this.toggleEditing(valueA, valueB) }

而不是:

  onClick={ () => this.toggleEditing.bind(this, valueA, valueB) }

答案 2 :(得分:0)

不要混用ES5和ES6,只需使用箭头功能:

onClick={(e) => this.toggleEditing(valueA, valueB)}