我正在构建的应用程序在 sidenav 中将电子邮件帐户显示为下拉列表(或手风琴),如此处所述。
多亏了UIkit 观察者,当数据在加载时存在时,下拉菜单可以正常工作。
代码看起来像这样(简化):
<div id="app_wrapper" data-uk-observe>
<ul class="uk-nav uk-nav-side uk-nav-parent-icon" data-uk-nav data-uk-observe>
{{#each mailAccounts}}
<li class="uk-parent ct-mail-account-side-nav-entry">
<a href="#">user@domain.tld</a>
<ul class="uk-nav-sub">
<li><a href="#"><i class="uk-icon-inbox"></i> Inbox</a></li>
<li><a href="#"><i class="uk-icon-folder"></i> Sent</a></li>
<li><a href="#"><i class="uk-icon-folder"></i> Trash</a></li>
<li><a href="#"><i class="uk-icon-folder"></i> Spam</a></li>
</ul>
</li>
<li class="uk-nav-divider"></li>
{{/each}}
</ul>
</div>
通过流星方法添加新帐户时,出现条目但下拉列表已死。只有当模板完全重新渲染时,它才会变得栩栩如生。这通常需要绕道到不存在菜单的其他页面。
- 我怎样才能让观察者意识到变化?
- 为什么观察者没有注意到变化并将它的魔法应用于新创建的条目?
- 有没有办法手动将 JavaScript 下拉魔法分配给新创建的元素?
UIkit 版本:2.19.0