Интеграция HotJar в SPA с тем же URL - PullRequest
1 голос
/ 30 апреля 2019

Я пытаюсь интегрировать Hotjar с административной панелью.

В настоящее время он работает как своего рода SPA без загрузки страницы, и ни один URL не изменяется. Все это происходит в /index.php, а затем, когда нам нужно изменить страницу, просто отправьте запрос AJAX для загрузки ее содержимого.

Из проверки документации Hotjar кажется совместимым с SPA, но только при изменении URL (либо строки запроса, либо хэша).

Есть ли способ вызвать в JS изменение страницы на имя страницы (то есть на главную страницу)? Я пробовал

hj('vpv', 'Main Page')

Но вывод кажется странным

url: "http://mydomain.comTest Page"

Спасибо.

1 Ответ

1 голос
/ 30 апреля 2019

Вы можете отслеживать свои изменения вручную, добавив дополнительный JavaScript после ваших вызовов AJAX.

Документация:

Чтобы вручную изменить состояние

hj('stateChange', 'some/relative/path');

Пример:

Представьте, что у вас есть SPA с базовым URL http://example.com/, и вы хотите отслеживать главную страницу и страницу, которая динамически загружается с помощью AJAX после нажатия какой-либо кнопки. Для этого вам необходимо:

1) В вашей учетной записи Hotjar создайте две тепловые карты. Для главной страницы вы можете использовать базовый URL http://example.com/. Для страницы, которая будет загружаться динамически, вы можете поместить виртуальный URL, например, http://example.com/my-dynamic-page, который будет использоваться только для записи и не должен существовать в вашем SPA.

2) В JavaScript вашего приложения добавьте код изменения состояния после вызова AJAX, который будет динамически загружать страницу. Вам нужно использовать виртуальный URL, который вы определили на предыдущем шаге, чтобы Hotjar знал, что это новая страница, и вы хотите отслеживать ее отдельно:

hj('stateChange', 'http://example.com/my-dynamic-page');

...