es6模块应该在coffeescript中工作(请参阅https://coffeescript.org/#modules),但即使是一个非常简单的项目,它也不适合我
-
创建了一个新目录
-
在中运行"npm init-y">
-
添加了密钥";类型":"模块";在我的包.json
-
创建了2个文件:index.coffee和utils.cffee
从"utils.coffee"导入{myprint}
myprint("你好,世界!"(export-myprint=(str(->
console.log(str(
当我尝试执行index.coffee时(通过'coffee index.coffee'-我在Windows和PowerShell上都尝试过git的bash shell(,我得到以下错误消息:
(节点:1856(警告:要加载ES模块,请设置";类型":"模块";在package.json中,或者使用.mjs扩展名。
以及更高版本:
SyntaxError:无法在模块之外使用导入语句
据我所知,这一切都是正确的。Coffeescapet正确地转换导入/导出语句,但不提供运行它们的环境。
来自文件:
请注意,CoffeeScript编译器不解析模块;在CoffeeScript中编写导入或导出语句将在生成的输出中生成导入或导出声明。您有责任将此ES2015语法转换为可在目标运行时使用的代码。
您将无法通过coffee
或node --require coffeescript/register
运行此代码。我相信你将不得不通过node
转换你的代码并运行生成的JS