2013-08-01 3 views
0

Сначала я хотел бы заметить, что я новичок в Метеор. Я не знаю, почему этот код:Метеор: вызывающая функция от Meteor.methods

Meteor.methods = 
    fun: -> 
    "This is message." 

if Meteor.isClient 
    Template.hello.greeting = -> 
    "Welcome to FirstApp." 

    Template.hello.events = 
    "click input": -> 
     console.log "You pressed the button." 

, когда эта строка набирается в консоли браузера:

Meteor.call("fun", function(err, res) { if(err) alert(err); else alert(res); }); 

листы рассылки: Ошибка: Метод не найден [404] вместо «Это сообщение.». Почему забава не определена?

ответ

0

потому что Meteor.methods не следует назначать функции. если вы это сделаете, у вас будет только одна функция.

Попробуйте вместо этого:

if Meteor.isServer 
    Meteor.methods({ 
     fun: -> 
     "This is message." 
    }) 

Я не знаю, что CoffeeScript может быть использован на клиенте. Но ваше определение не так, как события является объектом с множеством функций

это правильно (при условии, CoffeeScript работает на клиенте):

Template.hello.events({ 
    "click input": -> 
     console.log "You pressed the button." 
}) 

весело провести время с Метеор и читать documentation

1

Вы положили этот файл в каталог client? Meteor.methods должен определить fun на сервере, чтобы ответчик был правильно запущен.

Клиентская версия Meteor.methods определяет только локальную заглушку.

Смежные вопросы