我是AngularJS的新手,而且 - 因为它非常复杂而且这种方法对我来说很新,我有点困惑。
我来自“经典”背景(服务器端模板语言[如Yii,django,Smarty] +一些jQuery使事情变得有点动态)。
假设我有一个菜单栏(Bootstrap NavBar,或其他任何东西) - 一个位于内容主页外的元素,如下所示:
<body>
<div id="menubar">
... <!-- menu content -->
</div>
<div class="container">
<div ng-view></div>
</div>
</body>
现在我想让菜单有点动态,即添加或删除控制器内的一些菜单项。
使用服务器端框架&amp;他们的模板系统,例如Yii - 我只有一个带有BaseController
变量的$menuItems
类,并且每次都在menuBar
中渲染它,而所有控制器都将继承自BaseController
1}}所以他们可以修改项目。
另外,我需要一个处理位于菜单栏内的searchForm
的函数。它应该住在哪里?
对于像这样的东西,Angular方式是什么?到目前为止,我一直在考虑创建自定义service
或扩展$rootScope
。
答案 0 :(得分:9)
更新:我建议您在采用angular.js时采用John Papa's ng-demoes和style-guide作为第二步。
查看最近发布的angular.js团队示例,以显示完整的应用程序。
请注意角度为您提供的以下功能
我相信将服务和指令组合在一起是一种很好的方法,可以按照你描述的方式呈现菜单。