编程语言
首页 > 编程语言> > javascript – 在聚合物元素内动态创建html导入(版本1.0)

javascript – 在聚合物元素内动态创建html导入(版本1.0)

作者:互联网

在聚合物元素内动态创建html导入

有谁知道如何动态地将html导入添加到聚合物元素(版本1.0)?

下面的代码似乎没有用,并抱怨…
HTML元素< link>在阴影树中被忽略.

有没有人知道这方面或知道更好的方法?

<!-- 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,polymer-1-0,web-component,html
来源: https://codeday.me/bug/20190715/1466327.html