Skip to content

Commit 2204feb

Browse files
committed
Fix jsx-handler-names crash with arrays (fixes #340)
1 parent db6f841 commit 2204feb

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

lib/rules/jsx-handler-names.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ module.exports = function(context) {
2626
function rebuildPropValue(valueNode) {
2727
var valueNodeObject = valueNode.object;
2828
var subObjectType = valueNodeObject.object ? valueNodeObject.object.type : '';
29-
var propertyName = valueNodeObject.property ? valueNodeObject.property.name : '';
30-
var propValue = valueNode.property ? valueNode.property.name : '';
29+
var propertyName = valueNodeObject.property && valueNodeObject.property.name ? valueNodeObject.property.name : '';
30+
var propValue = valueNode.property && valueNode.property.name ? valueNode.property.name : '';
3131

3232
if (propertyName.length) {
3333
propValue = propertyName + '.' + propValue;

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

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,13 @@ ruleTester.run('jsx-handler-names', rule, {
5252
ecmaFeatures: {
5353
jsx: true
5454
}
55+
}, {
56+
code: [
57+
'<TestComponent shouldDisplay={arr[0].prop} />'
58+
].join('\n'),
59+
ecmaFeatures: {
60+
jsx: true
61+
}
5562
}],
5663

5764
invalid: [{

0 commit comments

Comments
 (0)