从节点导入Coffeescript v2
我正在尝试从Node.js文件导入Coffeescript v2模块。 我已经安装了coffeescript v2( coffeescript@next
),但是我无法在coffeescript和javascript文件之间导出/导入。
我的代码是:
// index.js require("coffeescript/register") require('babel-register') require("./server.js") // server.js import Foo from "./example.coffee" // example.coffee console.log("qwe") console.log "abc" export default a = 2
node index.js
失败
.../example.coffee:7 export default a = 2; ^^^^^^ SyntaxError: Unexpected token export at createScript (vm.js:74:10) at Object.runInThisContext (vm.js:116:10) at Module._compile (module.js:533:28) at Object.loadFile (/home/petr/mern-informatics-test/node_modules/coffeescript/lib/coffeescript/register.js:16:19) at Module.load (/home/petr/mern-informatics-test/node_modules/coffeescript/lib/coffeescript/register.js:45:36) <...>
如果我注释export default a = 2
,那么代码工作正常(在控制台上打印两行),所以基本的咖啡文本工作。
如果我运行coffee -c example.coffee
,则获取具有以下内容的example.js
文件:
// Generated by CoffeeScript 2.0.0-beta2 var a; console.log("qwe"); console.log("abc"); export default a = 2;
这是有效的JavaScript,使核心咖啡似乎不是一个问题。
另外,如果我用import Foo from "./example.coffee"
中的import Foo from "./example.js"
replaceimport Foo from "./example.coffee"
中的import Foo from "./example.js"
,它也可以工作。
那么为什么在import
到server.js
时, example.coffee
中的export
不起作用,我该如何解决这个问题呢?
另一个奇怪的是,如果我尝试直接从index.js
导入example.coffee
,它将失败
import Foo from "./example.coffee" ^^^^^^ SyntaxError: Unexpected token import