Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.04.2021, 10:24
Интересующийся
Отправить личное сообщение для Storm03 Посмотреть профиль Найти все сообщения от Storm03
 
Регистрация: 20.02.2021
Сообщений: 12

Убрать ошибку из консоли
Есть такая функция:
function request(p,b,a) {
		var m = document.getElementById(b),
		d = new XMLHttpRequest;
		d.open("POST", p, !0);
		d.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		d.addEventListener("readystatechange", function () {
			4 === d.readyState && 200 === d.status && (m.innerHTML = d.responseText);
			for (var scripts = m.getElementsByTagName("script"), i = 0; i < scripts.length; i++) {
				eval(scripts[i].innerText);
			}
			page_listeners();
		});
		d.send(a);
	}

Она загружает нужную страничку в нужный блок. Потом подключает оттуда js и вызывает установочную функцию с той страницы page_listeners().
Естественно, пока страничка не подгружена, эта функция отсутствует. Поэтому при загрузке базовой страницы интерпретатор выдаёт в консоль ошибку. К счастью, не блокируя при этом js и после подгрузки странички всё работает как надо. Но ведь это сейчас. Фик знает, как там дальше браузеры будут развиваться. Хотелось бы эту ошибку убрать.
Можно что-то придумать?
Ответить с цитированием
  #2 (permalink)  
Старый 29.04.2021, 14:22
Аватар для SuperZen
Профессор
Отправить личное сообщение для SuperZen Посмотреть профиль Найти все сообщения от SuperZen
 
Регистрация: 08.11.2017
Сообщений: 641

eval - взоржнул

https://webpack.js.org/guides/
https://webpack.js.org/guides/lazy-loading/
https://webpack.js.org/guides/code-splitting/

или
https://jakearchibald.com/2017/es-modules-in-browsers/

или
https://developer.mozilla.org/en-US/...Web_Components

или MVVM ченить типа react, vue, angular и т.д.
Ответить с цитированием
  #3 (permalink)  
Старый 29.04.2021, 21:27
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 5,966

function request(p,b,a) {
	var m = document.getElementById(b),
	d = new XMLHttpRequest;
	d.open("POST", p, !0);
	d.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	d.addEventListener("readystatechange", function () {
		 if(4 === d.readyState && 200 === d.status) { 
			m.innerHTML = d.responseText;
			for (var scripts = m.getElementsByTagName("script"), i = 0; i < scripts.length; i++) {
				eval(scripts[i].innerText);
			}
			page_listeners();
		}
	});
	d.send(a);
}


Сообщение от SuperZen Посмотреть сообщение
eval - взоржнул
Ну а чо, такое себе инкапсулирование.))
__________________
29375, 35

Последний раз редактировалось Aetae, 29.04.2021 в 21:31.
Ответить с цитированием
  #4 (permalink)  
Старый 30.04.2021, 09:28
Интересующийся
Отправить личное сообщение для Storm03 Посмотреть профиль Найти все сообщения от Storm03
 
Регистрация: 20.02.2021
Сообщений: 12

Сообщение от SuperZen
eval - взоржнул
Сообщение от SuperZen
ченить типа react, vue, angular и т.д.
Очень смешно.
""Наши люди в булошную на такси не ездят. (С)

Последний раз редактировалось Storm03, 30.04.2021 в 09:31.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу понять как убрать синтаксическую ошибку oleg901 Элементы интерфейса 10 01.08.2019 18:43
Uncaught TypeError: $(...) is not a function как убрать ошибку? PHPDeveloper jQuery 14 05.04.2016 16:00
Как разобрать ошибку с консоли Евгений_Лазаренко Angular.js 2 02.09.2014 17:39
Chrome выдает ошибку в консоли javascript LazySAge Opera, Safari и др. 0 16.06.2012 13:11
Выдает ошибку в консоли только опера RazZzeR AJAX и COMET 9 14.01.2012 21:46