1

我正在编写一个 javascript 库,并希望在编写代码时使用 CoffeeScript 的强大功能来保持代码整洁,但我也想主要使用 Node 之类的东西来实现它的require功能。这个想法是将我的子对象命名在一个全局对象下,并将每个子对象定义在自己的文件中以便于开发。

也许我正在以错误的方式解决这个问题,我只需要一种干净的方式来使用 CoffeeScript 编写客户端 JavaScript 库吗?

谢谢!下面的示例文件结构...

./twtmore.coffee

twtmore =
    a: require('./twtmore/a.coffee').a
    b: require('./twtmore/b.coffee').b
    c: require('./twtmore/c.coffee').c

./twtmore/a.coffee

class a
    ...

exports.a = a
4

2 回答 2

4

是的,你正在以错误的方式解决这个问题。Node.js 是一种服务器端技术。您正在寻找的是在浏览器的咖啡脚本中使用诸如RequireJSCommonJS模块(这是节点使用的模块)之类的东西。

有一个将CoffeeScript 与 RequireJS一起使用的插件,它似乎可以满足您的需求,但我没有使用它,也不能保证它。

于 2012-04-08T23:07:49.377 回答
0

浏览器的 CommonJS

至于使用 node.js 编写客户端 JavaScript 库,只需使用 modul8 或 browserify 编译成单个 JavaScript 文件即可。

咖啡脚本

如果您重视使用您的图书馆的人,那么不,不要这样做。

JavaScript 社区会讨厌你发布一个开源的 JavaScript 库,它的源代码是用 CoffeeScript 编写的

<aside>CoffeeScript 是一种可怕的语言</aside>

不过说真的

  • 您将失去人气,因为人们完全拒绝使用您的代码,因为它不是 javascript
  • 人们不会修补或阅读它,因为 CoffeeScript 不可读
  • 你正在分裂社区
于 2012-04-08T23:08:02.717 回答