绑定HTML而不是纯文本

时间:2015-09-15 20:27:03

标签: javascript polymer polymer-1.0

如何在Polymer中包含HTML而不是纯文本。让我们说一个人通过ajax检索包含<i><strong>元素的字符串数组,并且您希望使用dom-repeat <template>(或{{ {1}}就像我的具体情况一样)。你会如何做到这一点,以便HTML呈现为实际的HTML?

2 个答案:

答案 0 :(得分:1)

绑定节点的innerHTML属性的一种轻微破解方式:

<div inner-h-t-m-l="{{myProp}}"></div>

聚合物从连字符推断大写,将以下字符转换为大写。

答案 1 :(得分:0)

我找到的最简单方法是使用以下定义创建元素<bind-html>

<link rel="import" href="../bower_components/polymer/polymer.html">

<dom-module id="bind-html">

  <template></template>

</dom-module>

<script>

  Polymer({

    is: 'bind-html',
    properties: {
      html: {
        type: String,
        observer: ["htmlChanged"]
      }
    },
    htmlChanged: function(value){
      Polymer.dom(this.root).innerHTML = value;
    }

  });

</script> 

正如我发布的这个Zikes发布了另一个解决方案,所以我还要考虑哪个最好用,但至少想快速放弃这个以防万一它对某人有用。

感谢@Claies指出我没有仔细阅读并重新引导我参加一些有帮助的Polymer Polymer 0.5讨论。