我使用rappidjs构建了一个菜单视图组件,其中包含一个条目列表。我也有一些模块。
我希望模块注册他们的菜单条目。我想要建立一个经理或一个集合,但这似乎是对我的方式。有一个简单的方法吗?
可以在此处找到实施。
答案 0 :(得分:0)
查看rappidjs.com网站,它还使用与ModuleLoader结合的菜单。
在https://github.com/rappid/rappidjs.com/blob/master/public/app/Index.xml中,菜单是使用
构建的<nav>
<ui:ItemsView items="{pages}" tagName="ul" class="nav">
<js:Template name="item">
<li selected="{isPageSelected(item)}">
<a href="${item.link}">${item.label}</a>
</li>
</js:Template>
</ui:ItemsView>
</nav>
有关isPageSelected
的实施情况,请参阅https://github.com/rappid/rappidjs.com/blob/master/public/app/IndexClass.js。
对于可重用的解决方案,您可以使用获取ModuleLoader
的菜单组件
as属性并动态获取moduleLoader.$modules
数组中的所有已注册模块。
我们还没有构建这样的组件,因为菜单可以包含比ModuleLoader中已注册项目更多的项目。