Показать сообщение отдельно
  #10 (permalink)  
Старый 24.04.2021, 14:21
Интересующийся
Отправить личное сообщение для AlexLF Посмотреть профиль Найти все сообщения от AlexLF
 
Регистрация: 26.09.2012
Сообщений: 14

Сообщение от voraa Посмотреть сообщение
Это именно и есть не SPA, а загружалка html. Какая то имитация iframe.
SPA не грузит постоянно html код с сервера. С сервера должны загружаться данные. А на основании этих данных приложение формирует страницу. Если, что и подгружается, то это файлы js, css, в том случае, если они нужны, для блоков, которые используются редко.
Да, пожалуй, SPA это когда загружается только JSON.

У меня стояла задача менять состояния центрального блока main. Для этого - раньше - я складывал в main дивы со всеми возможными состояниями. И делал видимым только один див, который должен быть активным на этот момент. Не знаю, делают ли так, но это вполне работало.

Меня не устраивало, как собираются все дивы в центральном блоке. Не делать же один большой див. Я разбивал на разные php-файлы, отвечающие разным состояниям, и собирал с помощью стопки функций include ''file_name.php" с помощью php. js-код в php-файлах работал без проблем.

Это работало, но приходилось следить в разных местах, чтобы файлы всех состояний были. В общем, некрасиво, и php я не люблю. Решил заменить на подгрузку с помощью фетча.

Но, пожалуй, вернусь к единоразовой загрузки дивов со всеми состояниями, и к загрузке всего js-кода. Пускай загружается, и так и лежит. Если загружать и уничтожать в innerHTML код - полагаю, мне это в будущем отзовется разными непредсказуемостями. Тот же Vue, полагаю, тоже отреагирует негативно, если после запуска "подгрузить еще немного" Vue-объектов.
Ответить с цитированием