2015-02-23 2 views
19

Недавно Qt представил модуль QtWebEngine. Есть ли способ вызвать инструменты разработчика и отладить код JavaScript внутри QWebEngineView? Это стало возможным с помощью QWebViewОтладка QtWebEngine

page()->settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true); 

, но я не мог найти любой подобный вариант в QWebEngineView.

+0

Кажется, в документации об этой возможности для QWebEngine ничего нет. Надеюсь, он появится в будущих версиях. – demonplus

ответ

14

Я просто натолкнулся на это, поэтому я добавил его сюда для потомков.

Это было просто добавлено к Qt 5.5 git. Вы должны включить его с помощью переменной окружения QTWEBENGINE_REMOTE_DEBUGGING=<port>. Вы можете поставить 0.0.0.0:<port>, если вы выполняете отладку встроенного устройства и не можете использовать локальную консоль. Затем вы можете указать пункт http://127.0.0.1: получить отладчик. Это должен быть браузер на основе хрома. Вам нужно использовать Chrome, или вы можете использовать пример «быстрый nano-браузер», если хотите.

+0

Пробовал ли вы использовать QtWebEngine для размещения отладчика вместо внешнего браузера на основе Chromium? –

+1

Да, это действительно работает. Это просто требует немного больше барана. Казалось, что он работает точно так же. –

+0

Кто-нибудь может сделать эту работу с Qt 5.5.0 + Chrome 47 на Linux? Он работал отлично пару месяцев назад, но теперь я просто получаю пустую страницу, когда я выбираю свою страницу из списка «Проверяемые страницы»: - /. Я предполагаю, что это потому, что протокол devtools изменился в обратном-несовместимом виде. –

1

От http://blog.qt.io/blog/2015/03/17/qt-5-5-alpha-available/:

Удаленный инспектор может быть использован либо Определение переменных ENV QTWEBENGINE_REMOTE_DEBUGGING, или путем подачи -Дистанционных-отладка-порта аргумент командной строки. Затем вы можете указать браузер в указанном порту и проверить свой веб-контент.

8

В качестве альтернативы можно установить Firebug Lite, чтобы получить консоль и инспекторов JavaScript.

Просто добавьте

<script type="text/javascript" src="https://getfirebug.com/firebug-lite.js"></script> 

на страницу. Нажатие F12 отобразит консоль Firebug.

Смежные вопросы