如何将数据从JavaScript代码传递到自定义元素?

如何将数据从JavaScript代码传递到自定义元素?,javascript,polymer,custom-component,Javascript,Polymer,Custom Component,我想通过属性将变量上的数据传递给聚合物组分 代码如下: <script> var item1 = { title: "Title 1", status: "accepted" }; </script> <bm-card item="{{item1}}" otherAttribute="hello"> 变量项1={ 标题:“标题1”, 状态:“已接受” }; otherAttribute获取自定义元素上的数据,但项未到达

我想通过属性将变量上的数据传递给聚合物组分

代码如下:

<script>
  var item1 = {
      title: "Title 1",
      status: "accepted"
  };
</script>

<bm-card item="{{item1}}" otherAttribute="hello">

变量项1={
标题:“标题1”,
状态:“已接受”
};
otherAttribute获取自定义元素上的数据,但项未到达


如何从item1变量填充item属性?

要在
之外使用数据绑定,您需要

但是,您可以直接在js中设置属性:

<bm-card otherAttribute="hello">

document.addEventListener('polymer-ready', function() {
  document.querySelector('bm-card').item = item1;
});

document.addEventListener('polymer-ready',function(){
document.querySelector('bm-card')。项=项1;
});

您必须等待polymer ready的原因是确保元素已在DOM中升级,并定义了其属性/方法。

阅读文档和测试后,将数据传递给polymer元素的唯一方法是使用JavaScript。自动绑定仍然需要一些JS来发送数据。是的,需要一些东西将JS世界与HTML世界联系起来。它是用AngularJS“自动”完成的,我更喜欢这样的东西。这不是真的。在Angular中,您可以在作用域上设置数据模型(或在绑定中使用表达式),然后模板将其拾取。这里的情况也是如此。在Polymer中,还可以将数组/对象作为属性直接传递。如果您提示该类型,它将为您(反)序列化。从Polymer 1.0开始,您可以使用window.addEventListener('WebComponentsReady',function(){document.querySelector('bm-card')。item=item1;});