Где я могу поместить мои скомпилированные в Grunt шаблоны Ember.js в мой HTML-файл?
Я работаю над простым приложением Ember.js и Express, и до сих пор все мои шаблоны были в моем index.html
файл. Я впервые использую Grunt для чего-то гораздо менее прекомпилированного шаблона. (Я использую Grunt-Ember-Handlebars для решения проблемы компиляции)
Я переместил все мои шаблоны в handlebars
папка и они компилируются в templates.js
в той же папке.
Мой вопрос заключается в следующем: где я могу включить тег сценария, ссылающийся на templates.js
в моем HTML-файле?
Вот как я выложил все свои записки:
<script src="../js/jquery.js"></script>
<script src="../js/libs/handlebars-1.1.2.js"></script>
<script src="../js/libs/ember-1.3.0.js"></script>
<script src="http://builds.emberjs.com/beta/ember-data.js"></script>
<!-- APP -->
<script src="templates.js" type="text/javascript"></script>
<script src="../js/app.js"></script>
<script src='../js/router.js'></script>
<script src='../js/controllers/controllers.js'></script>
Мой путь к моему templates.js
файл правильный, так что это не проблема. Но он всегда возвращается с ошибками, заявляющими:
Ошибка подтверждения: не удалось найти "индексный" шаблон или представление.
Единственный файл, который я знаю, мне нужно включить после ember.js
файл. Кроме этого, нет никакой разницы в выводе ошибок, если я включаю его после или перед любыми файлами в моем приложении.
Спасибо за помощь заранее!
Редактировать: вот мой Gruntfile:
grunt.initConfig({
ember_handlebars: {
compile: {
options: {
namespace: "emberApp.TEMPLATES"
},
files: {
"views/templates.js" : "handlebars/*.hbs"
}
}
}
});
1 ответ
Неважно, где их поставить. Похоже, они неправильно назвали.
- Поместите шаблоны в
templates
- Назовите их правильно (
application.hbs
для шаблона приложения) - Используйте эту командную команду
ember_handlebars: {
options: {
processName: function(name) {
return name.replace(/(templates\/|\.hbs)/g, '');
}
},
files: {
"templates.js": "templates/**/*.hbs",
}