Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
1 / 1 / 2
Регистрация: 17.03.2016
Сообщений: 234

Пытаюсь понять шаблонизатор Handlebars для JavaScript

23.02.2017, 15:35. Показов 2510. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет. Нагуглил вот эту статью:
http://getinstance.info/articl... andlebars/

Но у меня самый первый пример сразу же не работает. Помогите понять откуда у меня ошибка, вроде пишу как в руководстве.

Файл index.html:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <title> Handlebars Example </title>
    <meta charset="UTF-8">
    <link rel="stylesheet" type="text/css" href="css/main.css">
    <script type="text/javascript" src="js/jquery.js"> </script> 
    <script type="text/javascript" src="js/handlebars.js"> </script> 
    <script type="text/javascript" src="js/main.js"> </script>          
</head>       
<body>
    <script id="book" type="text/x-handlebars-template">
             <h2> {{bookTitle}} </h2>
             <div> Author: {{bookAuthor}} </div>
    </script>
</body> 
</html>
Файл main.js:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
// Инициализируем объект с данными
var book = { bookTitle: '2001: A Space Odyssey', bookAuthor: 'Arthur Clarke' };
 
// Получаем шаблон
var templateScript = $('#book').html();
 
// Функция Handlebars.compile принимает шаблон и возвращает новую функцию
var template = Handlebars.compile(templateScript);
 
// Формируем HTML и вставляем в документ
$(document.body).append(template(book));
В итоге в консольке Хрома вот такая ошибка:
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.02.2017, 15:35
Ответы с готовыми решениями:

Пытаюсь понять комбинаторику.Не могу понять какую формулу использовать
Добрый день. Уже второй день бьюсь над комбинаторикой. Проблема стоит в том, что не могу понять, какую формулу нужно...

Восприятие ботами клеток карты, пытаюсь понять логику для игры
Всем привет! Столкнулся с некоторой сложностью при создании простой игры. Описание Вид сверху, карта состоит из клеток. Существует три...

Пытаюсь понять, не получается
По запросу - Магазины Ярославля 4-9 места занимают какие-то левые сайты, причем в описании присутствует название моего сайта - Магазины...

9
Superposition
 Аватар для Padimanskas
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
23.02.2017, 16:49
alex_7, console.log(templateScript)
1
1 / 1 / 2
Регистрация: 17.03.2016
Сообщений: 234
24.02.2017, 05:43  [ТС]
Цитата Сообщение от Padimanskas Посмотреть сообщение
console.log(templateScript)
не, не помогло((( та же ошибка остаётся.
а может надо локальный сервер использовать? а то я просто файл index.html открываю браузером.
0
Superposition
 Аватар для Padimanskas
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
24.02.2017, 13:12
alex_7, Все работает. Посмотрите и убедитесь в этом. Код из фиддла не вставляю, потому что он ваш.
1
1 / 1 / 2
Регистрация: 17.03.2016
Сообщений: 234
24.02.2017, 20:33  [ТС]
Цитата Сообщение от Padimanskas Посмотреть сообщение
Все работает. Посмотрите и убедитесь в этом. Код из фиддла не вставляю, потому что он ваш.
может у меня какая-нибудь не та версия Handlebars ? может версию надо другую найти?

Подскажите пожалуйста где искать ошибку? Я этот код вставляю к себе и у меня браузер хром выдает ошибку как на скриншоте. я третий день бьюсь и не могу даже понять, в каком направлении ошибку искать((
0
1 / 1 / 2
Регистрация: 17.03.2016
Сообщений: 234
24.02.2017, 20:35  [ТС]


вот такую ошибку выдаёт браузер
0
1 / 1 / 2
Регистрация: 17.03.2016
Сообщений: 234
25.02.2017, 09:52  [ТС]
Люди, ау, кто нибудь понимает в шаблонизаторах?

Помогите пожалуйста ((

Добавлено через 5 минут
Цитата Сообщение от Padimanskas Посмотреть сообщение
Все работает. Посмотрите и убедитесь в этом. Код из фиддла не вставляю, потому что он ваш.
а если этот же код скопировать и не в фидл вставить, а к себе на комп и открыть браузером?
в таком случае он ведь ошибку выдает почему то ((
0
Superposition
 Аватар для Padimanskas
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
25.02.2017, 14:01
Лучший ответ Сообщение было отмечено alex_7 как решение

Решение

Цитата Сообщение от alex_7 Посмотреть сообщение
а если этот же код скопировать и не в фидл вставить, а к себе на комп и открыть браузером?
в таком случае он ведь ошибку выдает почему то ((
Так тоже работает. Вот пример handlebars-test.zip
1
1 / 1 / 2
Регистрация: 17.03.2016
Сообщений: 234
25.02.2017, 14:25  [ТС]
Цитата Сообщение от Padimanskas Посмотреть сообщение
Так тоже работает. Вот пример handlebars-test.zip
всё, я нашёл ошибку!)) Точнее нагуглил. На del тоже кто то задавал аналогичный вопрос. Оказывается наш скрипт должен подключаться ПОСЛЕ скрипта с шаблоном, и тогда всё работает!

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <title> Handlebars Example </title>
    <meta charset="UTF-8">
    <link rel="stylesheet" type="text/css" href="css/main.css">
             
</head>       
<body>
    <script id="book" type="text/x-handlebars-template">
             <h2> {{bookTitle}} </h2>
             <div> Author: {{bookAuthor}} </div>
    </script>
    
    <script type="text/javascript" src="js/jquery.js"> </script> 
    <script type="text/javascript" src="js/handlebars.js"> </script> 
    <script type="text/javascript" src="js/main.js"> </script> 
</body> 
</html>
Вот так работает!!!

 Комментарий модератора 
Мат на форуме запрещён! Запрещено публиковать ссылки на другие форумы, а также их пропаганда!
0
1 / 1 / 2
Регистрация: 17.03.2016
Сообщений: 234
26.02.2017, 19:49  [ТС]
короче говоря, ура, всё заработало!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.02.2017, 19:49
Помогаю со студенческими работами здесь

Пытаюсь понять идеологию MVVM
По предыдущему опыту (не C#) активно использовал MVC. Теперь пытаюсь понять идеологию MVVM. Не могу четко придумать, где должен быть...

Основы MVC, пытаюсь понять код
Суть в чем, мне на производственной практике дали задание написать веб-приложение для управления списком сотрудников компании. Ну я его...

Я самоучка, пытаюсь понять квантовый мир
Привет. Я самоучка, пытаюсь понять квантовый мир, но застрял. Просьба ногами не бить. 1. Формула замедления времени не зависит от...

Пытаюсь понять логику человека, создавшего таблицу
Ситуация такая: имею дело с таблицей Excel, которая вычисляет количество кормов, распределяемое по разным цехам животноводческой фермы....

Написать программу в Excel, пытаюсь понять, но не получается
Написать программу сведений о выпускниках университета. Структура исходных данных: шифр студента, фамилия, имя, отчество, год окончания...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru