0
我有一個html
用這個模板:流星模板事件功能錯誤
<template name="entryfield">
<input type="text" id="name" placeholder="Name" /> <input type="text" id="message" placeholder="Your Message" /><br>
<input type="button" class="plusbutt" value="+"/><input type="button" class="minusbutt" value="-"/>
</template>
,我要聲明的2個按鈕事件:
Template.entryfield.events = {
'click .plusbutt': function() {
// Submit the form
var name = document.getElementById('name');
var mood = document.getElementById('mood');
var message = document.getElementById('message');
if(name.value != '' && message.value != ''){
Messages.insert({
name: name.value,
mood: '+',
message: message.value,
time: Date.now()
});
name.value = '';
message.value = '';
}
}
}
'click .minusbutt': function() {
// Submit the form
var name = document.getElementById('name');
var mood = document.getElementById('mood');
var message = document.getElementById('message');
if(name.value != '' && message.value != ''){
Messages.insert({
name: name.value,
mood: '-',
message: message.value,
time: Date.now()
});
name.value = '';
message.value = '';
}
}
但我有錯誤:
chat.js:58:19: Unexpected token :
58行是第二個事件聲明的開始。但是當我完全拿出第二場比賽時,一切都很順利。我的問題是人們如何在相同的模板事件中聲明多個函數?我在任何地方都能看到它,但我無法得到它的工作。謝謝!
我在哪裏可以找到模板事件的參考?學習Meteor的問題是他們的功能來自於各地,一些來自MongoDB,一些來自Handlebar,另一些來自JavaScripts,這使得初學者很難接受。
那麼我們什麼時候使用'Template.entryfield.events = {/*....*/}'? – sooon
@sooon你不這樣做,那隻會用一個對象覆蓋'events'函數,你不能再次調用它來添加事件。另外請注意,您可以多次調用'events'函數來繼續添加更多事件處理程序。 – sbking
經過大量的重複閱讀和思考之後,我想我現在就明白了。我做錯了什麼是我定義了'模板幫助函數',它不是'events'本身。現在我懂了。 – sooon