我有nodejs v0.6.3和coffeescript 1.1.3。在Archlinux上。
我知道他们在最新版本的coffeescript中改变了手表的工作方式,而且手表至少需要节点v0.6.2。
在我的情况下,它只能工作一次。之后,当我再次保存文件时,咖啡没有注意到。 这可能是什么问题?
答案 0 :(得分:10)
fs.watch
存在许多问题,我一直在讨论Node和CoffeeScript问题跟踪器。一个问题 - 可能是您遇到的问题 - 是某些程序不是通过直接写入现有文件来保存更改,而是通过写入临时文件然后mv
将该文件存储在现有文件之上一。从fs.watch
的角度来看,这意味着已删除已监视的文件,并且将忽略对新文件的更改。
在当前的CoffeeScript主服务器上,我们尝试通过每次发出rename
事件时重新查看文件来解决此问题。所以请安装它,让我知道它是否解决了你的问题。如果没有,您应该恢复使用旧的fs.watchFile
API,方法是降级到CoffeeScript 1.1.2或使用第三方工具,例如我自己的Jitter。