Polymer 聚合物组分和模型之间的双向数据绑定?

Polymer 聚合物组分和模型之间的双向数据绑定?,polymer,Polymer,在使用Polymer之前,我想检查一下是否可以在组件和javascript模型之间进行双向数据绑定。我阅读了网站上的数据绑定部分,但我仍然不清楚这一点 一个简单的例子:如果我有一个javascript中带有“volume”属性的“audio”模型,我可以将这个volume属性绑定到一个滑块上吗 我对JavaFx更为熟悉,下面是典型的JavaFx代码,可以实现这一点:slider.valueProperty().bindBidirectional(audio.volumeProperty())。

在使用Polymer之前,我想检查一下是否可以在组件和javascript模型之间进行双向数据绑定。我阅读了网站上的数据绑定部分,但我仍然不清楚这一点

一个简单的例子:如果我有一个javascript中带有“volume”属性的“audio”模型,我可以将这个volume属性绑定到一个滑块上吗

我对JavaFx更为熟悉,下面是典型的JavaFx代码,可以实现这一点:
slider.valueProperty().bindBidirectional(audio.volumeProperty())
。 一旦执行,用户在滑块上所做的任何更改都会反映到模型上,应用程序在模型上所做的任何更改也会反映到滑块上

现在在javascript中,如果我有
var audio={volume:75,…}
是否可以将此模型的volume属性绑定到例如纸张滑块的值?

是的,这是可能的。 这里有一个简单模型的示例:

<template is="auto-binding">
  <paper-slider min="10" max="200" value="{{audio.volume}}"></paper-slider>
  <h1>Current volume: {{audio.volume}}</h1>
</template>

<script>
  var audio = {volume: 42, stereo: true, title: "A beautiful song"};

  var template = document.querySelector('template[is="auto-binding"]');

  template.audio = audio

  template.status =0;
  template.statusIsOn = function(value) {
    if (value.status >0)
      return value.count;
    return 0;
  };
</script>

当前卷:{{audio.volume}
var audio={音量:42,立体声:true,标题:“一首美丽的歌”};
var template=document.querySelector('template[is=“auto binding”]”);
template.audio=音频
template.status=0;
template.statusIsOn=函数(值){
如果(value.status>0)
返回值.count;
返回0;
};
您在这里有一个可用的Plunker:


如果您需要更多信息,请随时询问

很有效,谢谢。只是关于滑块的一个细节:它仅在鼠标释放时更新模型,是否可以在拖动时更新模型?不确定,我将搜索并告诉您:)