【发布时间】:2013-09-21 08:24:56
【问题描述】:
刚开始探索 Meteor,我马上就有了一些让我陷入困境的东西:
1) 我安装并运行meteor add coffeescript。
2) 我将 myapp.js 文件转换为 .coffee。
3) 我保存了文件。
此时Meteor通过编译coffeescript文件生成了一个新的myapp.js文件。好吧,这似乎合乎逻辑。
4) 我跑了meteor。我在localhost:3000 看到该应用程序,但是如果我点击按钮,按钮点击事件会触发两次:一次来自myapp.js,一次来自myapp.coffee。
只是为了看一个测试,我添加了这个:
Template.hello.events "click input": ->
# template data, if any, is available in 'this'
console.log "You pressed the button" if typeof console isnt "undefined"
$('body').append('<div>test</div>')
当我单击按钮时,添加了两个 div。
现在,如果我删除已编译的myapp.js 文件,“您按下按钮”只会触发一次,并且只有一个 div 附加到页面。但是,如果我保存 .coffee 文件,每次都会生成一个新的 .js 文件,现在所有的 JS 都会执行两次。
您应该如何将 CoffeeScript 与 Meteor 一起使用,以便您的代码只执行一次?
【问题讨论】:
标签: javascript coffeescript meteor