У нас есть два приложения Discourse. Мы обновили оба до версии 2.9.0beta2. На первом обновление прошло без проблем, а на втором возникла ошибка в консоли: Uncaught ReferenceError: Handlebars is not defined.
Единственное различие между этими приложениями заключается в использовании разных пользовательских тем. Похоже, что в неработающем приложении используется коннектор above-site-header.hbs, тогда как в другом его нет. Ошибка JS, по-видимому, указывала на файл above-site-header.hbs. Возможно, этот файл загружается раньше, чем Handlebars в версии 2.9.0beta2? Я вернулся к стабильной версии (2.8.1), и там всё работает корректно в обоих приложениях. Есть какие-то идеи?
Если бы вы могли предоставить URL сломанной темы и/или сломанного сайта, у людей был бы больше шансов понять, в чём проблема. (Или, возможно, и то, и другое скрыто и/или защищено паролем.)
Боюсь, что и сайт, и тема являются приватными. Сайт теперь исправлен. Изменение версии в файле app.yml на stable вместо оставления значения по умолчанию tests-passed указывает на то, что проблема именно в этой бета-версии. Файл, вызывающий ошибку, находится по адресу:
connectors/above-site-header/jc-header.hbs (Я ошибочно указал в заголовке, что он находится в above-site-header.hbs. Это моя вина)
Готов выполнить некоторые проверки, если это поможет, но, к сожалению, не могу поделиться сайтом или темой!
В таком случае я бы предложил вам сделать копию темы и удалять элементы небольшими шагами, пока ошибка не исчезнет. Тогда причиной ошибки будет последний удалённый вами элемент.
Если вы сможете предоставить код из файла jc-header.hbs, это было бы полезно. Надеюсь, всё, что потребуется — это небольшое обновление совместимости для вашей темы.
Привет, у меня тоже возникла проблема с последней версией и плагином панели заголовка меню.
Похоже, мне придётся откатиться до версии 2.9.0beta1.
Не могли бы вы быстро подсказать, как это сделать?
A
Какую ревизию Git должен использовать этот контейнер? (по умолчанию: tests-passed)
#version: tests-passed
version: ‘v2.9.0.beta1’
приводит к следующему:
I, [2022-02-24T09:38:37.878937 #1] INFO – : > cd /var/www/discourse && git checkout v2.9.0.beta1
error: pathspec ‘v2.9.0.beta1’ did not match any file(s) known to git
Кстати, на другом приватном экземпляре Discourse, который мы используем, после обновления до версии 2.9.0.beta2 мы также столкнулись с этой ошибкой в консоли браузера.
Привет! У меня тоже только что возникла эта проблема! Мой сайт общедоступный, так что если хотите посмотреть, вот он: https://forum.simplecraft.us — я предоставлю список используемых плагинов, но особой кастомизации нет, кроме использования темы Air с некоторыми пользовательскими стилями CSS.
У меня всё работает нормально, пока я не нажимаю на сообщение, например, на самое свежее в разделе объявлений.
Большое спасибо за это! Похоже, что мой компонент темы значков тегов по какой-то причине не был установлен на автоматическое обновление. Обновление этого параметра всё исправило!
Для тех, кто столкнулся с этой проблемой: у нас был кастомный плагин, который раньше работал, но теперь мы не могли найти Handlebars. Мы выполнили yarn install для Handlebars и явно подключили его в плагине, после чего всё снова заработало. Не совсем понятно, почему теперь нужно явно подключать его, хотя раньше это не требовалось, но для меня это решение сработало.
@HisashiQ Можете поделиться кодом для кастомного плагина? Вам точно не нужно вручную устанавливать Handlebars. Проблемы в теме выше были связаны с порядком загрузки JS, а не с зависимостями yarn.