Javascript 如何在Polymer 1.0中解除绑定属性
在Polymer 1.0中,我们可以将元素属性绑定到变量:Javascript 如何在Polymer 1.0中解除绑定属性,javascript,binding,polymer,polymer-1.0,Javascript,Binding,Polymer,Polymer 1.0,在Polymer 1.0中,我们可以将元素属性绑定到变量: <paper-textarea id='area' value={{some_variable}}></paper-textarea> 目前还不是100%清楚您想要实现什么,但使用聚合物可以实现单向数据绑定 向下绑定: <script> Polymer({ is: 'custom-element', properties: { prop: String // n
<paper-textarea id='area' value={{some_variable}}></paper-textarea>
目前还不是100%清楚您想要实现什么,但使用聚合物可以实现单向数据绑定 向下绑定:
<script>
Polymer({
is: 'custom-element',
properties: {
prop: String // no notify:true!
}
});
</script>
...
<!-- changes to "value" propagate downward to "prop" on child -->
<!-- changes to "prop" are not notified to host due to notify:falsey -->
<custom-element prop="{{value}}"></custom-element>
聚合物({
是:“自定义元素”,
特性:{
prop:String//no notify:true!
}
});
...
向上装订:
<script>
Polymer({
is: 'custom-element',
properties: {
prop: {
type: String,
notify: true,
readOnly: true
}
}
});
</script>
...
<!-- changes to "value" are ignored by child due to readOnly:true -->
<!-- changes to "prop" propagate upward to "value" on host -->
<custom-element prop="{{value}}"></custom-element>
聚合物({
是:“自定义元素”,
特性:{
道具:{
类型:字符串,
通知:正确,
只读:正确
}
}
});
...
有关详细信息,请查看。您无法动态绑定和/或解除绑定到Polymer 1.0中的元素属性,因为绑定是在元素注册期间烘焙的,而不是在创建/准备/附加期间烘焙的。参考号 老实说,我不太确定你的用例是什么;但是,您很可能通过a)将
值
属性绑定到计算函数来实现它;或b)绑定到虚拟变量
<paper-textarea id='area' value={{letsCompute(some_variable)}}></paper-textarea>
...
letsCompute: function (v) {
//return your logic to bind or unbind
},
...
...
LetsComputer:函数(v){
//返回逻辑以绑定或解除绑定
},
...
Polymer API目前没有将任何方法公开为解除绑定值。也许如果您详细说明您的情况,我们可以为您提供另一种解决方案?我用iron ajax响应绑定了textarea。我试图实现的是定期更新textarea值,但在用户焦点输入时禁用更新(以防止覆盖用户正在输入的数据),我的解决方案是使用on response事件处理响应,并通过标志决定值是否应为updater pr not。在textarea的聚焦/模糊事件中控制标志。
<paper-textarea id='area' value={{letsCompute(some_variable)}}></paper-textarea>
...
letsCompute: function (v) {
//return your logic to bind or unbind
},
...