ichigoryume programming blog

プログラミングに関する備忘録。主にHTML5, C#, Swiftなど。

React : textareaでEnterかShift + Enterかで処理を分ける

Enterで確定、Shift + Enterで改行みたいにする場合。Enterのみの場合はe.preventDefault()するのがポイント

  render() {
    return (
      <textarea name="msg" cols="40" rows="4" onKeyPress={this.keyPressHandler.bind(this)}/>
      </div>
    )
  }

  keyPressHandler(e) {
    if(e.shiftKey == true) {
      return
    }
    if(e.key != "Enter") {
      return
    }

    console.log(e.target.value)
    e.preventDefault()
  }