Ранее я использовал полимер 1, для некоторой пользовательской проверки я использовал следующий код с queryselectorAll, чтобы получить все недопустимые элементы
var _formTag = this.$$("request-details").$$("#newForm");
_array = Array.prototype.slice.call(_formTag.querySelectorAll(":invalid"),0);
Теперь я делаю обновление до полимера 3, и он не работает сqueryselectorAll, поскольку все недопустимые входные данные теперь обернуты с помощью shadowroot. Обрабатывать элементы один за другим с использованием идентификатора и обхода теневого корня будет непросто, поскольку у нас больше элементов формы по требованию. Предложите мне любую идею, чтобы получить все недействительные элементы на странице.