diff --git a/packages/babel-generator/src/generators/jsx.js b/packages/babel-generator/src/generators/jsx.js index 5504f47010..24865630c0 100644 --- a/packages/babel-generator/src/generators/jsx.js +++ b/packages/babel-generator/src/generators/jsx.js @@ -91,7 +91,9 @@ export function JSXClosingElement(node: Object) { this.token(">"); } -export function JSXEmptyExpression() {} +export function JSXEmptyExpression(node: Object) { + this.printInnerComments(node); +} export function JSXFragment(node: Object) { this.print(node.openingFragment, node); diff --git a/packages/babel-generator/test/fixtures/jsx/comments/actual.js b/packages/babel-generator/test/fixtures/jsx/comments/actual.js new file mode 100644 index 0000000000..a1a0b56bb2 --- /dev/null +++ b/packages/babel-generator/test/fixtures/jsx/comments/actual.js @@ -0,0 +1,13 @@ +class Demo extends React.Component { + constructor(props) { + super(props); + this.state = {}; + } + render() { + return
+ + {/*
I am a jsx comment!!
*/} +
+
; + } +} diff --git a/packages/babel-generator/test/fixtures/jsx/comments/expected.js b/packages/babel-generator/test/fixtures/jsx/comments/expected.js new file mode 100644 index 0000000000..96506461ea --- /dev/null +++ b/packages/babel-generator/test/fixtures/jsx/comments/expected.js @@ -0,0 +1,17 @@ +class Demo extends React.Component { + constructor(props) { + super(props); + this.state = {}; + } + + render() { + return
+ + { + /*
I am a jsx comment!!
*/ + } +
+
; + } + +} \ No newline at end of file diff --git a/packages/babel-generator/test/fixtures/jsx/comments/options.json b/packages/babel-generator/test/fixtures/jsx/comments/options.json new file mode 100644 index 0000000000..4576a3f234 --- /dev/null +++ b/packages/babel-generator/test/fixtures/jsx/comments/options.json @@ -0,0 +1 @@ +{ "plugins": ["jsx"] }