Ошибка в бэке при редактировании товара: слишком много рекурсии

Здравствуйте.

Выбираю товар для редактирования из таблицы на вкладке Товары. Если это первый товар, который редактируется, то во всех вкладках информация отображается.

Если после этого вернуться в таблицу и выбрать другой товар, то большая часть вкладок (Фото и видео, Характеристики и др., кроме описание и SEO) очень часто (но не всегда) показывают белое поле и при переключении между ними в консоли ошибка:

Error at method $.product.editTabLoad. Original message: too much recursion InternalError: too much recursion jQuery 8

editTabLoadContent
editTabLoadContent
editTabLoadContent
editTabLoadContent
editTabLoadContent
editTabLoadContent
editTabLoadContent
editTabLoadContent

shop.js:355:25

Если после этого обновить страницу по F5, то все вкладки работают отлично.

У меня есть своя вкладка с тавблицей товаров и при переходе их неё в редактирование товара все вкладки работают. Получается так, что ошибка рекурсии возникает если в карточку товара происходит переход из вкладки Товары шопскрипта.

Пробовал очистку кеша, заменять файл shop.js на стурую версию - проблема не исчезла.

Куда копать?

1 ответ

  • 1
    Александр Страшко 5 августа 2022 13:03 #

    Решил вопрос "методом лома":

    В метод editTabLoad добавил обработчик исключений, при срабатывании которого производится перезагрузка страницы, если ранее не было перезагрузок (для защиты от рекурсии).

    Это решение вылечило целый букет проблем при редактировании товара.

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите