jsx-eslint/eslint-plugin-react

[jsx-handler-names] Option to enforce only for class methods

オープン

#358 opened on 2015/12/11

 (6 件のコメント) (5 件のリアクション) (0 人の担当者)JavaScript (2,731 件のフォーク)batch import
enhancementhelp wantedrule

Repository metrics

Stars
 (9,293 個のスター)
PR merge metrics
 (PR metrics pending)

説明

This is a useful rule, but it can sometimes get annoying when I want to use a prop or a method from a library directly as a handler. I think the real benefit to the rule is to force me to name my component's methods appropriately, but as it currently works, I sometimes need to do silly things like const handleSelect = props.entities.toggleItem;.

I would really like an option which prevents:

<MyComponent onChange={this.doSomething} />

// or in a stateless component:

<MyComponent onChange={doSomething} />

but still allows:

<MyComponent onChange={library.doSomething} />

<MyComponent onChange={this.props.doSomething} />

// or in a stateless component:

<MyComponent onChange={props.doSomething} />

Does that make any sense?

コントリビューターガイド