Я сейчас играю с Polymer 2 (*) и у меня проблема ...
Я хочу предоставить службу, размещенную в выделенном месте, основанную на пользовательском теге, которая может быть встроена в случайное другое веб-приложение. Я уже закончил тег, который инкапсулирует небольшой инструмент и добавил заголовки CORS. В целях тестирования я написал простую страницу JavaScript, которая встраивала страницу. Все работает как положено.
Следующий тестовый пример - небольшое приложение Polymer 2, которое также потребляет (встраивает) тег. И то, и другое (встроенное приложение и встроенное приложение содержат несколько бумажных - * - тегов, и здесь возникают проблемы: браузеры говорят мне, что они не могут зарегистрировать некоторые теги, потому что они уже зарегистрированы. Я знаю, что эта проблема обычно происходит, когда импортируются разные версии одного и того же тега или если пути импорта не совпадают по всему приложению, но в моем случае это не ошибка, а особенность. Я хочу быть независимым от технологии, в которой встроен пользовательский тег является сборкой.
Chrome 71:
dom-if.html:305 Uncaught DOMException: Failed to execute 'define' on 'CustomElementRegistry': this name has already been used with this registry
at [...]/bower_components/polymer/lib/elements/dom-if.html:305:18
at [...]/bower_components/polymer/lib/elements/dom-if.html:309:3
Firefox 64:
NotSupportedError: Operation is not supported dom-if.html.js:292
<anonymous>
[...]/bower_components/polymer/lib/elements/dom-if.html.js:292:3
<anonymous>
[...]/bower_components/polymer/lib/elements/dom-if.html.js:1:2
`
Есть предложения о том, как это исправить? Я попытался связать, чтобы сгладить компоненты, но мне не удалось избавиться от проблемы.
- Mik68
(*) Хорошо, я признаю, Polymer 2 - не самая последняя / текущая вещь, но я должен придерживаться этого, пока весь проект не переключится.