ReactのhandleClickという命名の慣習について

anatoo
·

こういうツイート見かけたので自分の考えをまとめてみる。

これと同じようなことを自分もReactを使い始めたときに思って、実際にコードを書くときに別の名付けをやってたりしてたんだけど、あんまり機能しなくてすぐにやめた。結果としてhandleClickのような命名のほうが優れていることに気がついた。

というのも、イベントリスナに対してhandleClickのような命名ではなくインタラクションや処理に着目した命名をすると、モデルのメソッドや関数の名前と被ってしまうことがけっこうあって却ってわかりづらいことがよくあった。また、内部でイベントを処理するコードを書いている場合(例: `event.preventDefault()`、 `event.stopPropagation()` など)、handle(イベント名)としたほうがイベントを処理することを含意してくれる(逆にインタラクションに着目した命名をするとそれが薄れる)ので名付けとしてわかりやすいと思う。

まあなので、イベントリスナに対してhandleClickのような命名のほうが機能すると僕は思っているので、これからもこういう命名のやり方をすると思います。

@anatoo
福岡のソフトウェアエンジニア、UIデザイナー。 @anatoo