Skip to content

Commit 7800ab1

Browse files
committed
Merge pull request #348 from jakemmarsh/update-jsx-handler-names
Update jsx-handler-names error messages to be less specific
2 parents 0c2ffa7 + abc8527 commit 7800ab1

File tree

2 files changed

+5
-8
lines changed

2 files changed

+5
-8
lines changed

lib/rules/jsx-handler-names.js

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -51,19 +51,16 @@ module.exports = function(context) {
5151

5252
var propIsEventHandler = PROP_EVENT_HANDLER_REGEX.test(propKey);
5353
var propFnIsNamedCorrectly = EVENT_HANDLER_REGEX.test(propValue);
54-
var eventName;
5554

5655
if (propIsEventHandler && !propFnIsNamedCorrectly) {
57-
eventName = propKey.split(eventHandlerPropPrefix)[1];
5856
context.report(
5957
node,
60-
'Handler function for ' + propKey + ' prop key must be named ' + eventHandlerPrefix + eventName
58+
'Handler function for ' + propKey + ' prop key must begin with \'' + eventHandlerPrefix + '\''
6159
);
6260
} else if (propFnIsNamedCorrectly && !propIsEventHandler) {
63-
eventName = propValue.split(eventHandlerPrefix)[1];
6461
context.report(
6562
node,
66-
'Prop key for ' + propValue + ' must be named ' + eventHandlerPropPrefix + eventName
63+
'Prop key for ' + propValue + ' must begin with \'' + eventHandlerPropPrefix + '\''
6764
);
6865
}
6966
}

tests/lib/rules/jsx-handler-names.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -68,22 +68,22 @@ ruleTester.run('jsx-handler-names', rule, {
6868
ecmaFeatures: {
6969
jsx: true
7070
},
71-
errors: [{message: 'Handler function for onChange prop key must be named handleChange'}]
71+
errors: [{message: 'Handler function for onChange prop key must begin with \'handle\''}]
7272
}, {
7373
code: [
7474
'<TestComponent handleChange={this.handleChange} />'
7575
].join('\n'),
7676
ecmaFeatures: {
7777
jsx: true
7878
},
79-
errors: [{message: 'Prop key for handleChange must be named onChange'}]
79+
errors: [{message: 'Prop key for handleChange must begin with \'on\''}]
8080
}, {
8181
code: [
8282
'<TestComponent onChange={this.onChange} />'
8383
].join('\n'),
8484
ecmaFeatures: {
8585
jsx: true
8686
},
87-
errors: [{message: 'Handler function for onChange prop key must be named handleChange'}]
87+
errors: [{message: 'Handler function for onChange prop key must begin with \'handle\''}]
8888
}]
8989
});

0 commit comments

Comments
 (0)