2013-05-31 4 views
1

Я работаю над проектом EmberJS от игрушек и дошел до того, что ситуация действительно дезорганизована, поэтому я улучшаю свою файловую структуру.Включая внешние шаблоны руля?

Я принял вдохновение от Discourse's EmberJS application structure, разместив мои контроллеры, модели, маршруты и т. Д. В отдельных файлах/папках, но столкнулся с проблемами при попытке включить мои шаблоны рулей обратно в мой проект.

Что я делаю, чтобы повторно включить мои шаблоны меняется мой index.html из:

<script type="text/x-handlebars" data-template-name="students"> 
    <h2>Students:</h2> 
    <ul> 
     <li>{{firstName}} - {{lastName}}<li> 
    </ul> 
</script> 

к:

<script type="text/x-handlebars" data-template-name="students" src="js/SD/templates/students.js.handlebars"></script> 

Но это не работает.

Как я могу добавить файлы шаблонов внешних дескрипторов для использования с моим приложением EmberJS?

ответ

1

Вы предпочитаете использовать инструмент сборки, как yeoman.io с соответствующими ember-generator, чтобы получить ваши шаблоны прекомпилированы автоматически, или предоставить свои шаблоны непосредственно для Ember.TEMPLATES массива, например:

Ember.TEMPLATES['myTemplate'] = Ember.Handlebars.compile('<p>Hello put in here your template</p>'); 

Так что в вашем случае, добавьте это к вашему файлу app.js:

Ember.TEMPLATES['students'] = Ember.Handlebars.compile('<h2>Students:</h2><ul><li>{{firstName}} - {{lastName}}<li></ul>'); 

Таким образом, он будет доступен для обработки эмбером.

Надеюсь, это поможет

+0

Спасибо, интуитивно понятный. Я просто экспериментировал с настройкой шаблонов с помощью массива Ember.TEMPLATES, но я хотел бы сохранить их в отдельных файлах. Я пробовал делать: Ember.TEMPLATES ['students'] = Ember.Handlebars.compile ($. Get ('js/SD/templates/students.js.handlebars')); который не работает. Есть ли способ сделать это? – Anonymous

+0

Боюсь, нет. Если вы хотите использовать отдельные файлы, вам следует обратиться к инструменту построения, как я уже говорил, иначе вы должны обеспечить логику делать это самостоятельно ... – intuitivepixel

+0

Я посмотрю на Йеомон. :-) Еще раз спасибо. – Anonymous

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