如何在Polymer 1.0中创建新的模板实例?

时间:2015-06-11 14:30:38

标签: polymer polymer-1.0

在Polymer 0.5中,我使用templateElement.createInstance(dataToBind)创建模板的新实例,并将数据对象绑定到新实例:

var instance = templateElement.createInstance(dataToBind);
container.appendChild(instance);

在Polymer.Base中,我发现instanceTemplate函数用于创建模板的新实例,但此函数不会将数据绑定到实例。 有没有办法在Polymer 1.0中实现这一目标?

1 个答案:

答案 0 :(得分:3)

如果您定义这样的模板:

<template is="dom-template">
  <h2>{{name}}</h2>
  <h3>...lives<h3>
</template>

你可以生成这样的实例:

<script>
  // construct the anonymous presenter
  var instance = templateInstance.stamp();
  // the data model lives on the presenter
  instance.name = 'Instance';
  // the nodes are available in `root`
  document.body.appendChild(instance.root);
</script>

这或多或少是在实例Polymer元素时发生的情况,除了presenter是元素的实例(而不是匿名对象)。