- 使用 AngularJS 1.5.8 和 Django/Django REST 框架作为后端。
- 此时有两个URL(
app/
用于登录和app/dashboard
作为主要内容(;只要有app/
就太好了。 login
和dashboard
我作为组件;navbar
和sidebar
我有作为指令。- 目前使用 ngRoute 和我正在阅读的内容使我相信我应该使用 ui-router 来完成此操作。
只是想到的一些基本事情。
我的侧边栏有几个我正在开发的工具。我希望用户能够单击它们,然后在主内容区域中加载与该工具相关的内容,而无需刷新页面或更改 URL。
我读到的一些内容表明ui-router
可能更适合此目的?我不是,确定,因为我只是在学习AngularJS,并且仍在为它的概念而苦苦挣扎。因此,我没有任何需要修复的代码要发布。主要只是试图理解我需要研究的概念和技术来实现这一点。当您甚至不确定应该寻找的术语和技术是什么时,很难在Google和SO上查找结果。
不确定应该使用ngRoute
还是ui-router
;模块是否应该构建为components
或directives
;每个工具的内容是否保留在自己的HTML模板中;等等......
这是一个有点宽泛的问题,但您正在寻找的是客户端路由。ngRoute 和 ui-router 都提供此功能,并且方式非常相似,除了 ui-router 通过嵌套路由和多个命名视图容器提供显著的可扩展性。
我的建议是从ngRoute开始,了解它的来龙去脉,然后切换到ui-router,如果你发现你需要这个额外的功能。
客户端路由可以与哈希爆炸 (#/( 一起使用,也可以使用 html5 模式,您可以使用在视觉上像服务器端路由一样运行的基本 URL。
现在你已经有了搜索的术语,至少这么开心的谷歌搜索!