Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从聚合物元素选择性地改变发布属性_Javascript_Events_Polymer - Fatal编程技术网

Javascript 从聚合物元素选择性地改变发布属性

Javascript 从聚合物元素选择性地改变发布属性,javascript,events,polymer,Javascript,Events,Polymer,我将聚合元素与现有框架绑定在一起,并且我正在寻找一种方法,当在元素上设置某些属性时,将事件发布到我的框架中,但仅当它们是从我的框架之外的源设置时 例如,我有一个带有“caption”属性的自定义输入元素。如果元素或框架以外的其他源中的数据绑定在控件上设置了caption属性,我希望向框架发布一个事件,通知它caption属性已更改,但如果框架设置了caption属性,我不希望发布该事件 我目前正在观察块中发布这些事件。我在元素上有一个名为setFromExternalModel(prop,val

我将聚合元素与现有框架绑定在一起,并且我正在寻找一种方法,当在元素上设置某些属性时,将事件发布到我的框架中,但仅当它们是从我的框架之外的源设置时

例如,我有一个带有“caption”属性的自定义输入元素。如果元素或框架以外的其他源中的数据绑定在控件上设置了caption属性,我希望向框架发布一个事件,通知它caption属性已更改,但如果框架设置了caption属性,我不希望发布该事件

我目前正在观察块中发布这些事件。我在元素上有一个名为setFromExternalModel(prop,value)的函数,用于设置框架中属性的值。如果有什么方法可以让我将这个函数中的数据传递给observe块,我可以阻止事件被发布,但是我还没有想出一个优雅的方法来实现这一点


想法?

如果框架更改了属性,为什么不触发事件很重要? 以相同的方式处理所有属性更改要简单得多


Polymer的核心和纸面元素没有框架/用户数据更改的概念,我们也没有考虑过任何重要的用例。

我想要抑制事件的原因是,如果它来自服务器,我不需要向服务器发回,特别是因为它有可能覆盖其他用户在原始属性集之间提交的更改。我已经通过使用变更日志完成了我的目标,但是我希望有一个功能API来设置属性,这样我就可以包含将被转发到事件的元数据。这将简化我的代码。