是否可以通过编程方式控制 show/hide 清晰度下拉菜单?
Is it possible to programmatically control the show/hide of clarity drop downs?
是否可以通过组件的 ts 代码以编程方式控制 show/hide 下拉列表(使用 Angular2 清楚)- https://vmware.github.io/clarity/documentation/dropdowns
基本上我正在尝试使用下拉菜单作为 toast 通知,即 2 个触发器来显示下拉菜单内容
1.点击
2. 在代码中发生的事件(ajax 调用中的错误等)
我不建议为此目的使用下拉菜单。 Clarity 没有任何祝酒词,所以也许您可以使用警报或设计不同的 UX 来解决核心问题。
但是,下拉列表的静态 CSS 版本通过将 open
class 添加到组件来切换下拉列表,如下所示:
<div class="dropdown open">
<button type="button" class="dropdown-toggle btn btn-link">
Dropdown Toggle
<clr-icon shape="caret down"></clr-icon>
</button>
<div class="dropdown-menu">
<h4 class="dropdown-header">Dropdown header</h4>
<button type="button" class="dropdown-item">Lorem.</button>
<button type="button" class="dropdown-item">Lorem ipsum.</button>
<button type="button" class="dropdown-item">Lorem ipsum dolor.</button>
<div class="dropdown-divider"></div>
<button type="button" class="dropdown-item">Link</button>
</div>
因此,如果您确定要使用它,则可以使用 NgClass 有条件地切换 class。
正如 Jeremy 在上面所说的那样,使用下拉列表作为提示或通知不是推荐的 Clarity 设计模式。但是,可以使用代码 hide/show 下拉菜单。有关使用 *clrIfOpen
指令的示例,请参见下面的插件。
站点上尚未记录 *clrIfOpen
指令,但我们正在努力更新它以反映这些情况下的用法。
如果您在代码中设置打开 属性 您可以 hide/show clr-dropdown-menu
<clr-dropdown>
<button clrDropdownTrigger class="btn">
Dropdown Toggle
<clr-icon shape="caret down"></clr-icon>
</button>
<clr-dropdown-menu *clrIfOpen="open" clrPosition="bottom-left">
<label class="dropdown-header">Dropdown header</label>
<a href="javascript://" clrDropdownItem>Action 1</a>
<a href="javascript://" clrDropdownItem>Action 2</a>
<div class="dropdown-divider"></div>
<a href="javascript://" clrDropdownItem>Link 1</a>
<a href="javascript://" clrDropdownItem>Link 2</a>
</clr-dropdown-menu>
</clr-dropdown>
https://plnkr.co/edit/ZbXWnyMx0thImLXNTqkw?p=preview
注意:您的问题有助于确定使用这样的下拉菜单的问题,在第一次呈现时菜单将不会有正确的位置。如果这对您有影响,请在此处订阅以获取更新。
是否可以通过组件的 ts 代码以编程方式控制 show/hide 下拉列表(使用 Angular2 清楚)- https://vmware.github.io/clarity/documentation/dropdowns
基本上我正在尝试使用下拉菜单作为 toast 通知,即 2 个触发器来显示下拉菜单内容 1.点击 2. 在代码中发生的事件(ajax 调用中的错误等)
我不建议为此目的使用下拉菜单。 Clarity 没有任何祝酒词,所以也许您可以使用警报或设计不同的 UX 来解决核心问题。
但是,下拉列表的静态 CSS 版本通过将 open
class 添加到组件来切换下拉列表,如下所示:
<div class="dropdown open">
<button type="button" class="dropdown-toggle btn btn-link">
Dropdown Toggle
<clr-icon shape="caret down"></clr-icon>
</button>
<div class="dropdown-menu">
<h4 class="dropdown-header">Dropdown header</h4>
<button type="button" class="dropdown-item">Lorem.</button>
<button type="button" class="dropdown-item">Lorem ipsum.</button>
<button type="button" class="dropdown-item">Lorem ipsum dolor.</button>
<div class="dropdown-divider"></div>
<button type="button" class="dropdown-item">Link</button>
</div>
因此,如果您确定要使用它,则可以使用 NgClass 有条件地切换 class。
正如 Jeremy 在上面所说的那样,使用下拉列表作为提示或通知不是推荐的 Clarity 设计模式。但是,可以使用代码 hide/show 下拉菜单。有关使用 *clrIfOpen
指令的示例,请参见下面的插件。
站点上尚未记录 *clrIfOpen
指令,但我们正在努力更新它以反映这些情况下的用法。
如果您在代码中设置打开 属性 您可以 hide/show clr-dropdown-menu
<clr-dropdown>
<button clrDropdownTrigger class="btn">
Dropdown Toggle
<clr-icon shape="caret down"></clr-icon>
</button>
<clr-dropdown-menu *clrIfOpen="open" clrPosition="bottom-left">
<label class="dropdown-header">Dropdown header</label>
<a href="javascript://" clrDropdownItem>Action 1</a>
<a href="javascript://" clrDropdownItem>Action 2</a>
<div class="dropdown-divider"></div>
<a href="javascript://" clrDropdownItem>Link 1</a>
<a href="javascript://" clrDropdownItem>Link 2</a>
</clr-dropdown-menu>
</clr-dropdown>
https://plnkr.co/edit/ZbXWnyMx0thImLXNTqkw?p=preview
注意:您的问题有助于确定使用这样的下拉菜单的问题,在第一次呈现时菜单将不会有正确的位置。如果这对您有影响,请在此处订阅以获取更新。