使用AngularJS(多个独立应用程序)的门户类型应用程序

Ket*_*tan 9 ajax portal angularjs

我们正在尝试使用多个/独立的"子应用程序"创建门户类型应用程序.假设所有子应用程序都是用Angular编写的,那么实现以下目标的好模式是什么.

  1. 每个应用程序都可以相互独立地开发和部署.
  2. 它们共享一个通用的身份验证服务,它们可以共享公共库(指令,过滤器等).
  3. 在任何给定时间,只有一个应用程序可见并处于活动状态.每个子应用程序的范围彼此隔离.
  4. 当用户进入子应用程序之间时,只要用户不刷新页面或访问另一个静态链接,就会维持状态.(我认为这是内置于Angular中,可能不需要特别的努力)
  5. 每个子应用程序将有多个视图(它将有自己的菜单).将根据可用的子应用程序提供顶级菜单.理想情况下,顶层菜单是根据部署的子应用程序动态构建的.也许有一个服务器端组件(服务器检测文件夹结构等,并确定部署了哪些应用程序,并将必要的js代码注入页面).

鉴于AngularJs没有多级视图结构这一事实,我考虑在不同的div上使用多个ng-app声明,然后使用$ window范围来存储活动应用程序的密钥并隐藏那些不活动的应用程序.

Tia*_*dão 1

对于您的(相当开放的)问题没有简单的答案,但是关于 $route 和 ngView 的限制,我在采用源自此的技术方面取得了巨大成功:http ://www.bennadel.com/blog/2420-Mapping -AngularJS-Routes-Onto-URL-Parameters-And-Client-Side-Events.htm