CoffeeScript
CoffeeScript 是一种编译成 JavaScript 的小型语言。它提供了一种简单的语法,没有大量的括号和圆括号。代码逐一编译成等效的 JS,并且在运行时没有解释。
CoffeeScript 在客户端和服务器端都受支持。以 .coffee
、.litcoffee
或 .coffee.md
结尾的文件会自动编译成 JavaScript。
命名空间和 CoffeeScript
以下是 CoffeeScript 如何与 Meteor 的命名空间一起工作。
根据通常的 CoffeeScript 约定,CoffeeScript 变量默认情况下是文件范围的(仅在定义它们的
.coffee
文件中可见)。在编写包时,CoffeeScript 定义的变量可以像任何其他变量一样导出(参见 Package.js)。导出变量会将其提升到包范围,这意味着它将对应用程序或包中的所有代码(
.js
和.coffee
文件)可见。在
.js
文件中声明的包范围变量在同一应用程序或项目中的任何.coffee
文件中都可见。除了导出之外,没有其他方法可以从
.coffee
文件创建包范围变量。我们无法找到一种方法让它自然地融入 CoffeeScript 语言中。如果您想将包范围变量与 CoffeeScript 一起使用,一种方法是创建一个简短的.js
文件来声明所有包范围变量。然后可以从.coffee
文件中使用和分配它们。如果您想在同一个包中的
.coffee
文件之间共享变量,并且不想在.js
文件中单独声明它们,我们有一个您可能喜欢的实验性功能。名为share
的对象在 CoffeeScript 代码中可见,并在同一包中的所有.coffee
文件之间共享。因此,您可以为在包中的所有 CoffeeScript 代码之间共享但不会逃脱该包的值编写share.foo
。
大量的 CoffeeScript 用户,请告诉我们这种安排对您来说如何运作,share
对您是否有帮助,以及您希望看到更改的任何其他内容。