Расположение помощника по шаблону Meteor

У меня есть приложение, структурированное следующим образом:

myapp/
myapp/client/index.html
myapp/client/lib/helpers.js
myapp/server...

Внутри helpers.js у меня есть:

Template.game.helpers({

    game_id: function() {
        return '12345';
    }

});

Внутри index.html у меня есть:

<div>
    Game: {{> game }}

    <template name='game'>
        {{game_id}}
    </template>
</div>

Я получаю эти ошибки ниже, и страница отображается полностью пустой:

Uncaught TypeError: Cannot read property 'helpers' of undefined
Uncaught Error: No such template: game

Я использую Meteor в Windows, но сомневаюсь, что эта проблема связана с Windows.


person Lorenzo    schedule 13.02.2015    source источник


Ответы (1)


Шаблоны должны быть определены на верхнем уровне (вне любых других тегов html). Измените index.html, чтобы он выглядел примерно так:

<body>
  Game: {{> game}}
</body>

<template name='game'>
  {{game_id}}
</template>

Я рекомендую ознакомиться с руководством на meteor.com.

person David Weldon    schedule 13.02.2015