Отладка JavaScript в wkhtmltopdf
Где я могу увидеть выходные данные отладки javascript, когда wkhtmltopdf работает в режиме отладки (--debug-javascript)
4 ответа
Другое (я бы сказал, самое простое) средство отладки javascript в WKHTMLTOPDF - это загрузка QT Browser, базового браузера, используемого WKHTMLTOPDF, и проверка выполнения javascript для вашей страницы из браузера.
Вы можете скачать его здесь
Инструкция по отладке javascript в QT здесь
Вы можете в основном отлаживать свой JavaScript в QT Browser так же, как в Chrome или Firefox.
Рендеринг test.html
<!DOCTYPE html>
<html>
<head></head>
<body>
BODY
<script>
console.log('Hi!');
</script>
</body>
</html>
как это
wkhtmltopdf test.html test.pdf --debug-javascript
должен вернуть что-то вроде этого
Loading pages (1/5)
Warning: :0 Hi!
Resolving links (2/5)
Counting pages (3/5)
Printing pages (5/5)
Done
Хотя ответ Даффи Панкс правильный, несколько недель назад у меня была дополнительная идея, которая мне очень помогла. Это я хочу поделиться: показать это в PDF
При рендеринге макета для PDF я ставлю дополнительный (скрытый) DIV #pdf_errors
И очень рано в источнике - если #pdf_errors
здесь - я позволил точечному выводу консоли заполнить этот div, а по ошибке - покажу. Это не совсем отладка, но, по крайней мере, теперь я понимаю, что происходит не так.
Источник в coffeescript, мои простые времена javascript давно прошли...
if ($pdf=$("#pdf_is_here")).length
for type in ["log","warn","error"]
do (type) =>
console[type]= (a...) =>
$pdf.append("<div class='#{type}'>#{s}</div>") for s in a
window.onerror= (messageOrEvent, source, lineno, colno, error) =>
$pdf.append("<div class='critical'>#{messageOrEvent}</div>")
$pdf.show()
$pdf.hide() # just in case css is not here
Чтобы увидеть ошибки js, сделанные wkhtmltopdf, используйте "
ПОЖАЛУЙСТА! не используйте тихий режим для wkhtmltopdf -> ("
ТАКЖЕ! если вы хотите сделать что-то вроде console.log(), если вы хотите более подробно отладить свой js -> вы можете использовать:
документация wkhtmltopdf:https://wkhtmltopdf.org/usage/wkhtmltopdf.txt