繁体   English   中英

使“ dom-if”检查另一个元素中的属性的条件吗?

[英]Make 'dom-if' check the condition against a property in another element?

我有一些看起来像这样的代码:

..
<template is="dom-if" if="_myMethod()">
   <div>Hello world</div>
</template>
..

_myMethod看起来像这样:

_myMethod: function(){
   return this.$.someOtherObject.someList.size() == 0;
}

如您所见,该方法从页面中的其他polymer-element返回值。 但是当我的其他 polymer-element发生变化时,如何更改dom-if的“状态”呢?

我知道,如果我将一个值传递给该方法,例如: _myMethod(someValue)如果someValue更改,它将更新dom-if ,但是我需要“观察”另一个polymer-element的更改。 我该怎么做?

经过一些试验,我得出以下结论:

..
<my-other-element on-some-list-changed="_notifyChange" id="someOtherObject">
</my-other-element>
..
..
<template is="dom-if" if="_myMethod(didChange)">
   <div>Hello world</div>
</template>
..
..
_notifyDidChange: function()
{
   this.didChange = !this.didChange;
}
_myMethod: function(didChange){
   return this.$.someOtherObject.someList.size() == 0;
}

dom-if其他元素上的值(数组)发生更改,则dom-if现在将更新。 不确定是否存在错误(带有数组),但是我尝试直接绑定到someOtherObject.someList并同步两个元素之间的更改,它们同步了,但是事件未正确触发,因此dom-if无法更新。 :(

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM