提问人:Satyam Kumar 提问时间:7/27/2022 最后编辑:Satyam Kumar 更新时间:4/4/2023 访问量:32
如何在 poymer-js 中隐藏下拉列表
how to hide drop down list in poymer-js
问:
我需要隐藏下拉菜单。我尝试了.hided属性,但它不起作用
<paper-dropdown-menu id="firmChannelFilter" hidden="${(this._channelFilterVisibility)}"
class="small-padding" label="Channel Filter">
<paper-listbox slot="dropdown-content"
.hidden="${(this._channelFilterVisibility)}" id="firmChannel"
答:
0赞
Metal Paw
4/4/2023
#1
您应该能够按如下方式设置该属性:hidden
hidden$="[[_channelFilterVisibility(valueThatChanges)]]"
- 如果隐藏 ,它将自动隐藏 ,因为它是一个嵌套元素。
paper-dropdown-menu
paper-listbox
- 如果要更改非聚合物特定的属性/属性,则需要在 = 之前添加一个 $,即 或 hidden 属性。
class$="[[_colour(obj.Active)]]"
class$="[[_selectedColour(selectedFilter)]]"
- 您不需要量词 - Polymer 已经知道并解释您在 之间或属于 .
this
[[]]
{{}}
this
- 您必须将属性传递给函数,否则它只会在页面/元素加载时调用一次。如果传入更改的属性(即过滤器属性),则每次属性值更改时,Polymer 都会调用该函数。
- 该属性是 ,而不是在 中。
hidden
.hidden
paper-listbox
{{}}
用于双向装订,通常在与显示和设置值的内容(如纸质列表框)交互时使用。 是单向绑定,通常在某物只接受一个值时使用。[[]]
归根结底,你的 html 代码应该如下所示:
<paper-dropdown-menu id="firmChannelFilter"
hidden$="[[_channelFilterVisibility(filterProperty)]]"
class="small-padding"
label="Channel Filter">
<paper-listbox slot="dropdown-content"
class="dropdown-content"
id="firmChannel"
selected="{{selectedIdString}}"
attr-for-selected="id">
<paper-item id="A">Item A</paper-item>
<paper-item id="B">Item B</paper-item>
<paper-item id="C">Item C</paper-item>
</paper-listbox>
</paper-dropdown-menu>
简而言之,这是一个包含 3 个项目的下拉菜单:项目 A、项目 B 和项目 C。当您选择其中之一时,它会将 的值设置为字符串“A”、“B”或“C”。当 的值发生变化时,将使用新值作为传入参数调用该函数。this.selectedIdString
this.filterProperty
this._channelFilterVisibility
评论