Я динамически создаю полимерный компонент с дротиком и добавляю в dom.Динамически импортировать HTML-шаблон в Dart Polymer
Но теперь я хотел бы это сделать БЕЗ, чтобы статически импортировать шаблон HTML во время компиляции.
В моем случае использования у меня есть контейнер div с идентификатором myContainer
и пользовательский компонент полимерного дротика, чей тег my-tag
.
Я tryied с:
LinkElement e = new LinkElement('link');
e.rel = 'import';
e.href= 'my-tag.html';
document.head.children.add(e);
$['myContainer'].children.add(new Element.tag('my-tag'));
Но это заканчивается тем, что, за исключением следующего:
Uncaught HierarchyRequestError: Failed to execute 'appendChild' on 'Node': Nodes of type 'HTML' may not be inserted inside nodes of type '#document'.
...
Заметим, что исключение Raisen когда полимерный элемент добавляется в йот и не при добавлении тега ссылки. Также тот же код работает, если добавить ссылку во время компиляции и комментировать код, который добавляет его во время выполнения.
Я пробовал также с несколькими различными вариантами кода выше, в основном добавляя тег ссылки в отдельный метод, называемый до polymerInit
или внутри polymerInit().run(...)
, но ничего не меняется.
Мне интересно, поддерживается ли этот вариант использования.
Почему вы не хотите добавлять импорт статически? Я думаю, что Полимерные трансформаторы нуждаются в них, когда вы строите проект. –
Потому что я хотел бы создать библиотеку компонентов, которые отображаются в области содержимого с помощью рамки навигации, когда пользователь нажимает на нее. Мне уже нужно импортировать каждый компонент со стороны дротика «навигатора», но это не так уж плохо, поскольку мне нужно зарегистрировать «маршруты». Но я пытаюсь найти способ не включать HTML-шаблоны тоже на стороне HTML и минимизировать работу, которую нужно сделать, чтобы добавить новую «страницу». –
Вы можете создать трансформатор. –