Я пока не могу точно определить эту проблему или понять её корневую причину, но поскольку она нарушает базовую функциональность браузера, я вынужден сообщить о ней заранее.
Недавно, в течение последней недели или около того, на нашем экземпляре CDCK SaaS Tappara.co возникла новая проблема.
Иногда кнопка «Назад» в браузере не возвращает вас на страницу индекса, откуда вы пришли, а перенаправляет на другую тему, которую вы читали ранее.
Я лично сталкиваюсь с этим часто, и несколько пользователей сообщили о той же проблеме. Пока все жалобы поступили от пользователей Android/Chrome.
Привет, @ljpp — спасибо за сообщение об этой проблеме. Недавно были внесены обновления в код, отвечающий за навигацию «назад», поэтому вполне возможно, что возникла регрессия или несовместимость с темой/плагином на вашем сайте.
Можете ли вы указать конкретную последовательность переходов по страницам, которая вызывает эту проблему?
Шаблон воспроизведения пока не найден, но проблема возникает часто. Также за последние пару дней было замечено ещё несколько странных поведений, которые могут быть связаны с этим.
При обновлении страницы браузера меня перенаправляло на другую страницу, а не туда, где я находился в момент обновления.
Я видел, что темы не открывались при нажатии на них на индексной странице.
У меня это происходит прямо сейчас. Я заметил, что при использовании кнопки «Назад» тема перескакивает на другой пост внутри этой темы, а затем снова появляется последний пост. После этого я не могу открыть тему снова. После обновления страница темы появляется.
Обратите внимание: кнопка «Назад» также не возвращает меня к последнему посту в конце. Я посещал эту тему более одного раза ранее, поскольку она каким-то образом вызывает проблему (возможно, ссылка на другой пост темы или даже кнопка «Показать полный пост» первого поста — у меня пока нет чётких шагов воспроизведения).
Я попытался воспроизвести проблему ещё раз. Она определённо возникает, когда кнопка «Назад» не возвращает вас сразу к последнему посту, и происходит этот переход к другому посту, прежде чем вас вернёт к списку тем.
Это тоже происходит на iPad в приложении DiscourseHub при свайпе слева. Началось вчера именно здесь. Довольно раздражает
И это случается не постоянно. Иногда появляется тема, которая была второй по счёту, нужно перезагрузить форум, и всё возвращается на главную. Или же начинает прокручивать историю красных тем.
Конечно, это может быть другая проблема, но так как симптомы похожи, я не стал создавать новую тему.
Спасибо всем — мы продолжим изучать возможные причины. Если кто-то сможет проверить консоль браузера на наличие ошибок при возникновении этой проблемы, это было бы очень полезно (понимаю, что на мобильных устройствах это сделать сложнее, чем сказать!)
Я открыл тему из списка последних, нажал кнопку «Назад», чтобы вернуться к списку последних, и снова щёлкнул по теме. Она не открывается. Вот ошибка, которую я получаю:
Uncaught TypeError: Cannot read properties of undefined (reading 'refresh')
at e.navigatedToPost (url.js:335:20)
at e.routeTo (url.js:240:14)
at e.E [as navigateToTopic] (topic-list-item.js:44:16)
at e.click (topic-list-item.js:284:19)
at e.trigger (core_view.js:63:1)
at e.r [as trigger] (index.js:383:1)
at e.trigger (ember-events.js:138:30)
at e.r [as trigger] (index.js:383:1)
at HTMLTableRowElement.o (ember-events.js:203:39)
navigatedToPost @ url.js:335
routeTo @ url.js:240
E @ topic-list-item.js:44
click @ topic-list-item.js:284
trigger @ core_view.js:63
r @ index.js:383
trigger @ ember-events.js:138
r @ index.js:383
o @ ember-events.js:203
Спасибо за подробную информацию, @Moin. Я только что объединил коммит, который должен решить проблему. Он появится на Meta в течение следующих 30–60 минут.
Да, я не думаю, что это было специфично для Android.
Проблема в какой-то степени зависела от производительности сети и процессора, поэтому, возможно, именно поэтому её чаще замечали на планшетах. Однако мне также удалось воспроизвести эту проблему в Chrome на macOS после искусственного замедления сети и процессора в инструментах разработчика.
Похоже, возникла проблема, когда настройка сайта «индикатор загрузки» установлена в значение «спиннер» (не значение по умолчанию). Мы исправим это как можно скорее.