Подтвердить что ты не робот

Debug tampermonkey script

Я хотел бы отлаживать tampermonkey script с помощью хром-консоли, но я не могу найти свой script в списке.

enter image description here

Я что-то делаю неправильно, или просто скрипты тампермона не появляются? И в этом случае, как я могу его отладить?

4b9b3361

Ответ 1

Tampermonkey - это просто расширение, которое вводит сценарии шаблонов для оценки ваших собственных скриптов, поэтому вы можете отлаживать любой из этих сценариев, если вы можете их найти.

Проблема заключается в том, что он оценивает сценарии пользователей, как если бы кто-то назвал eval() на них, поэтому вы увидите VM### вместо чего-то приятного, как myscript.js, и вы обычно не можете переходить к ним, как постоянные скрипты.

Вместо этого добавьте строки отладчика:

  • Настройки:

Панель мониторинга TamperMonkey → Настройки → Общие (режим конфигурации: расширенный) → Сценарии отладки Tampermonkey general settings w/debug checked

  • Или, в вашем usercript добавьте строку:

    debugger;

так: debugger line in userscript

(Выполнение этого в верхней части пользовательского слова эквивалентно настройке Tampermonkey)

Когда вы открываете консоль на странице с помощью script, она приостанавливается при ударе строк отладчика и показывает ваш исходный файл (окруженный некоторым шаблоном tampermonkey).

Что должно выглядеть так: chrome paused on tampermonkey script

Затем вы можете обрабатывать любые другие строки, которые вам нужны, в отладчике.

Если вы столкнулись с проблемой, вы также можете отладить основную логику самой tampermonkey, открыв проверку фоновой страницы в chrome://extensions. Он печатает приятные сообщения, чтобы вы знали, что именно вы можете использовать, чтобы прыгать в своем коде.