Как TurboLinks отображает ответ HTML? - PullRequest
1 голос
/ 23 марта 2019

Я изучаю базовую внутреннюю функциональность фреймворка JavaScript TurboLinks на данный момент.Из того, что я понимаю, события onclick назначаются всем тегам привязки, чтобы иметь возможность предотвратить действие по умолчанию (полная перезагрузка страницы) и вместо этого загрузить содержимое ссылки через AJAX.Пожалуйста, исправьте меня, если я ошибаюсь.

Когда обратный вызов AJAX получает весь HTML-документ в виде строки, как он может быть обработан без (повторной) загрузки скрипта и тегов стиля?

1 Ответ

0 голосов
/ 26 марта 2019

Сценарии и стили будут (повторно) загружаться и оцениваться только после их вставки на страницу.Когда HTML принимается через AJAX, Turbolinks создает закулисный новый документ HTML и устанавливает его содержимое в ответ HTML.Поскольку это еще не обработано / вставлено, браузер не загружает / не оценивает никакие сценарии или стили.<head> нового документа теперь можно сравнивать с текущим, и при необходимости можно добавлять дополнительные активы.

С точки зрения конкретных компонентов Turbolinks:

...