diff --git a/packages/non-core/coffeescript-compiler/coffeescript-compiler.js b/packages/non-core/coffeescript-compiler/coffeescript-compiler.js index 283ccecce2..fa4b937181 100644 --- a/packages/non-core/coffeescript-compiler/coffeescript-compiler.js +++ b/packages/non-core/coffeescript-compiler/coffeescript-compiler.js @@ -22,7 +22,10 @@ export class CoffeeScriptCompiler { // prevents CoffeeScript projects from using the modules package and // putting require or import statements within backticks; it just // won't happen automatically because of Babel. - runtime: false + runtime: false, + // CoffeeScript 2 supports for JSX, which Meteor supports only for React, + // per packages/ecmascript/plugin.js. + react: true }); } diff --git a/packages/non-core/coffeescript/tests/coffeescript_tests.coffee b/packages/non-core/coffeescript/tests/coffeescript_tests.coffee index ef584dc8cd..dcfb4a67d5 100644 --- a/packages/non-core/coffeescript/tests/coffeescript_tests.coffee +++ b/packages/non-core/coffeescript/tests/coffeescript_tests.coffee @@ -28,3 +28,12 @@ Tinytest.add "coffeescript - import local module via native import statement", ( import { testingForNativeImportedModule123456789 } from "./coffeescript_module.coffee"; Tinytest.add "coffeescript - import local module exported by a CoffeeScript native export statement, via native import statement", (test) -> test.isTrue testingForNativeImportedModule123456789? + + +# JSX +Tinytest.add "coffeescript - JSX", (test) -> + # Mock React + React = + createElement: (tag, attributes, body) -> + "<#{tag}>#{body}" + test.isTrue
Hello from JSX!
is '
Hello from JSX!
'