javascript - 在 polymer 元素中动态创建 html 导入(版本 1.0)

标签 javascript html polymer web-component polymer-1.0

在 polymer 元素中动态创建 html 导入

有谁知道如何将 html 导入动态添加到 polymer 元素(版本 1.0)中?

下面的代码似乎不起作用,并提示说.. HTML element <link> is ignored in shadow tree.

有没有人知道解决这个问题或知道更好的方法?

<!-- here is where the created import could go -->

<dom-module id="my-component">

<!-- here is where I'd ideally like the import to be created -->

  <template>
    <div id="container">

      <!--This is where my dynamically loaded element should be placed-->

    </div>
  </template>

  <script>
    Polymer({is:'my-component',
      attached: function(){

        var importElem = document.createElement('link');
        importElem.rel = 'import';
        importElem.href = '/components/my-dynamic-sub-component.html';
        this.root.appendChild(importElem);
        var app = document.createElement('my-dynamic-sub-component');
        this.$.container.appendChild(app);

      }
    });
  </script>

</dom-module>

最佳答案

Polymer 1.0 在每个 Polymer 组件上都有实用函数 importHref(href, onLoad, onError)。要动态导入和添加您的外部元素,您可以使用此代码:

this.importHref('path/to/page.html', function(e) {
  // e.target.import is the import document.
  var newElement = document.createElement('new-element');
  newElement.myProperty = 'foo';

  Polymer.dom(this.$.container).appendChild(newElement);  
}, function(e) {
  // loading error
});

关于javascript - 在 polymer 元素中动态创建 html 导入(版本 1.0),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30657159/

相关文章:

javascript - 单击链接时关闭导航覆盖(一个寻呼机)

javascript - 如何缩放 Canvas 中图像的特定部分

javascript - jQuery 获取所选类的总标记

javascript - 响应元素增长的事件

javascript - 如何在 React 中使用 i18n-iso-countries?

javascript - 在动态 html 列表内容周围添加 Div

html - 我的 iPhone 6 获取 iPhone 5 媒体查询

dart - 如何在 Dart 代码中创建 Dart Polymer 自定义元素的实例?

html - 在 Polymer 完成的水平布局中垂直固定容器

javascript - Polymer 及其 Shadow DOM 中的 CSS 封装限制