2

如果您在 Coffeescript 中使用字符串插值...

# source.coffee
bar = "Bar"
console.log "Foo #{bar}"

它编译为

# compiled.js
var bar = 'Bar';
console.log(`Foo ${bar}`);

什么版本的 Coffeescript 开始将字符串插值编译成 ES6 模板文字?是否有让 Coffeescript 以旧方式编译的设置?我也必须在我的肥皂盒上讨论这个问题。模板文字的目的是使 JavaScript 更容易被人类编写。那么为什么在编译的输出中做出这种改变呢?Coffee 编译它的旧方法得到了更广泛的支持。

我实际上正在使用grunt-contrib-coffee,我遇到了这个。如果还有 grunt 任务的设置,我会很感激这个提示。

4

1 回答 1

3

这是coffeescript 2 vs 1。我刚刚测试过,旧版本返回连接字符串,新版本返回ES6模板文字。

不知道你是如何意外使用coffeescript 2的。它在 npm 中以不同的包名称(coffeescript对于 v2 与coffee-scriptv1)。

于 2017-12-22T00:01:01.097 回答