Skip to content

Commit 7e510e5

Browse files
committed
Fix jsx-quotes on Literal childs (fixes #29)
1 parent 9c37e38 commit 7e510e5

File tree

2 files changed

+3
-12
lines changed

2 files changed

+3
-12
lines changed

lib/rules/jsx-quotes.js

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -40,20 +40,10 @@ module.exports = function(context) {
4040
return val[0] === character && val[val.length - 1] === character;
4141
}
4242

43-
/**
44-
* Determines if a given node is part of JSX syntax.
45-
* @param {ASTNode} node The node to check.
46-
* @returns {boolean} True if the node is a JSX node, false if not.
47-
* @private
48-
*/
49-
function isJSXElement(node) {
50-
return node.type.indexOf('JSX') === 0;
51-
}
52-
5343
return {
5444

5545
Literal: function(node) {
56-
if (!isJSXElement(node.parent)) {
46+
if (node.parent.type !== 'JSXAttribute') {
5747
return;
5848
}
5949
var val = node.value;

tests/lib/rules/jsx-quotes.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@ eslintTester.addRuleTest('lib/rules/jsx-quotes', {
2222
{code: '<App foo=\'bar\' />;', args: [1, 'single'], ecmaFeatures: {jsx: true}},
2323
{code: '<App foo="bar" />;', args: [1, 'double'], ecmaFeatures: {jsx: true}},
2424
{code: '<App foo="ba\'r" />;', args: [1, 'single', 'avoid-escape'], ecmaFeatures: {jsx: true}},
25-
{code: '<App foo=\'ba"r\' />;', args: [1, 'double', 'avoid-escape'], ecmaFeatures: {jsx: true}}
25+
{code: '<App foo=\'ba"r\' />;', args: [1, 'double', 'avoid-escape'], ecmaFeatures: {jsx: true}},
26+
{code: '<App>foo</App>;', args: [1, 'single'], ecmaFeatures: {jsx: true}}
2627
],
2728
invalid: [
2829
{code: '<App foo="bar" />;',

0 commit comments

Comments
 (0)