Проверьте, существует ли ресурс в Polymer Framework
Я пытаюсь получить изображения продукта в dom-repeat
шаблон, но получаю 404
ошибки для отсутствующих ресурсов, отображаемых в console.log
, Я хотел бы очистить журнал с более законными ошибками.
<template is="dom-repeat" items="" index-as="index">
<lazy-image class="center"
placeholder="/images/placeholder.png"
src="https://www.images.com/[[formatImg(item.id)]].png"
style="width: 24pt; height: 24pt;">
</lazy-image>
</template>
...
formatImg(id) {
if(typeof id != 'null') return id.replace(' ', '%20');
}
Я видел некоторую документацию по on-error
событий, но я не вижу прямого пути для их реализации в платформе Polymer.
Есть ли способ справиться с этими GET
запросы, чтобы они не были зарегистрированы?
1 ответ
Короткий ответ:
К сожалению нет.
Это не вещь "не могу сделать это в полимере". На момент написания, обработка 404 с целью предотвращения ошибки консоли вообще невозможна с точки зрения разработчика.
Более длинный ответ:
УБЕДИТЕЛЬНО, у веб-разработчика нет возможности предотвратить регистрацию 404 браузером как ошибку. Если браузеру задают вопрос "достаньте эту вещь, пожалуйста" или даже "эй, вы можете проверить, если это вещь?" и ответ "это не вещь", это зависит от браузера, что он делает с этой информацией. Прямо сейчас то, что он делает (во всяком случае, Chrome - я не исследовал, что делают другие), это "регистрирует ошибку на консоли". Всегда. Не важно что.
Вы можете (как конечный пользователь) отключить это поведение в своем браузере. Но вы НЕ можете (как разработчик) "поймать" ошибку и обработать ее, чтобы браузер был доволен. Даже если вы ДЕЙСТВИТЕЛЬНО обрабатываете ошибку и предоставляете браузеру что-то, что существует вместо ресурса, вызывающего 404, он все равно будет зарегистрирован в консоли как ошибка:
<!-- STILL CAUSES A 404 ERROR TO BE LOGGED TO THE CONSOLE -->
<img id="myimg" src="imagethatdoesntexist.gif" onerror="this.onerror=null;this.src='imagethatexists.gif';">
Источник: метод проб и ошибок && эта тема https://bugs.chromium.org/p/chromium/issues/detail?id=124534