我一直在尝试使用Coffeescript和Jade进行Meteor。对于最基本的应用程序,我编写了以下代码。
主咖啡
import './hello.coffee'
import './main.jade'
玉器
head
title Chatter
body
h1 Welcome to Chatter!
+hello
你好咖啡
import { Template } from 'meteor/templating'
import { ReactiveVar } from 'meteor/reactive-var'
import './hello.jade'
Template.hello.onCreated
helloOnCreated: ->
@counter = new ReactiveVar 0
return
Template.hello.helpers
counter: -> Template.instance().counter.get()
Template.hello.events
'click button': (event, instance) ->
instance.counter.set instance.counter.get() + 1
return
你好玉
template(name="hello")
button Click me!
p You have pressed the button #{counter} times.
现在,当我尝试运行此应用程序时,出现此错误
Uncaught TypeError: callbacks[i].call is not a function
。我对此并不陌生,因此将不胜感激。谢谢! 最佳答案
您当前正在传递Template.hello.onCreated
具有helloOnCreated
属性的对象。只需直接传递Template.hello.onCreated
一个函数。
Template.hello.onCreated ->
@counter = new ReactiveVar 0
return
从Meteor's documentation,
onCreated
,onRendered
和onDestroyed
属性接受功能。events
和helpers
属性接受对象,就像您拥有的一样。