Tag: coffeescript

CoffeeScript模块模式

在回顾Github上CoffeeScript的源代码的同时 ,我注意到大部分(如果不是全部)模块定义如下: (function() { … }).call(this); 这个模式看起来像是将整个模块封装在一个匿名函数中并自行调用。 这种方法的优点和缺点是什么? 还有其他的方法来实现相同的目标吗?

如何在Mongoose模型中定义方法?

我的locationsModel文件: mongoose = require 'mongoose' threeTaps = require '../modules/threeTaps' Schema = mongoose.Schema ObjectId = Schema.ObjectId LocationSchema = latitude: String longitude: String locationText: String Location = new Schema LocationSchema Location.methods.testFunc = (callback) -> console.log 'in test' mongoose.model('Location', Location); 要调用它,我正在使用: myLocation.testFunc {locationText: locationText}, (err, results) -> 但是我得到一个错误: TypeError: Object function model() { Model.apply(this, arguments); } has no […]

BackboneJS渲染问题

在过去的六个月里,我一直在与Backbone合作。 前两个月都在搞乱,学习和弄清楚我想如何构build我的代码。 接下来的4个月里,一个生产适合的应用程序正在冲击。 不要误会我的意思,Backbone已经把我从之前标准的数千行客户端代码中解救了出来,但是它使我能够在更短的时间内完成更多macros大的事情,从而开辟了一堆新的问题。 对于我在这里提出的所有问题,都有一些简单的解决scheme,就像黑客或者只是觉得错误 。 我保证300分的奖励一个真棒解决scheme。 开始: 加载 – 对于我们的用例(pipe理面板),悲观同步是不好的。 对于某些事情,我需要在接受它们之前在服务器上validation事物。 我们在'sync'事件被合并到Backbone之前就开始了, 我们用这个小代码来模拟加载事件: window.old_sync = Backbone.sync # Add a loading event to backbone.sync Backbone.sync = (method, model, options) -> old_sync(method, model, options) model.trigger("loading") 大。 它按预期工作,但不正确。 我们将此事件绑定到所有相关视图,并显示一个加载图标,直到我们从该模型中收到成功或错误事件。 有没有更好,更清洁的方法来做到这一点? 现在对于困难的人来说: 太多的东西渲染自己太多 – 比方说,我们的应用程序有标签。 每个选项卡控制一个集合。 在左边你收集。 你点击一个模型开始在中心编辑它。 您更改其名称并按Tab键以转到下一个表单项目。 现在,你的应用程序是一个“实时的东西”,注意到差异,运行validation,并自动同步更改到服务器,不需要保存button! 太好了,但是表格的开始处的H2与input中的名称相同 – 您需要更新它。 哦,你需要更新名单上的名字。 俄亥俄州,名单按名称sorting! 这是另一个例子:你想在集合中创build一个新的项目。 你按下“新build”button,你开始填写表格。 你是否立即将该项目添加到集合? […]

我可以在coffeescript中编写npm包吗?

我已经使用咖啡一段时间了。 现在我需要写一个npm包,我可以写在coffeescript,或者我应该编译成JavaScript的JavaScript?

NodeJS中CoffeeScript的例子?

作为一个宠物项目,我正在尝试熟悉NodeJS和CoffeeScript,并且发现很难让它滚动。 我已经发现了许多单个文件超级简单的应用程序的例子 ,就像在CoffeeScript的例子文件夹中一样 ,然而,没有一个真正显示完整应用程序的样子。 我也搜刮了谷歌无济于事。 你有没有中型,多文件的CoffeeScript / NodeJS应用程序的例子,我可以学习?