我正在开发一个网站,可以分解为几个主页。除了共享会话数据(即会话ID和登录用户名)外,这些页面可以被认为是相互隔离的。在一个站点上有多个AngularJS应用程序?
最初,我将使用ng-view(即将页面转换为AngularJS视图)将该网站构建为SPA。但是,我认为我的网站没有以这种方式实施的好处。这将需要额外的时间和精力来支持SEO(Making AJAX Applications Crawlable)。
采用一种不提供任何好处,甚至创造额外工作量的方法似乎并不太聪明。所以我想,为什么我不把我网站的主要页面制作成单独的AngularJS应用程序。该网站需要被搜索引擎索引的部分仅仅是这些应用程序中的一些初始屏幕,所以我不需要为SEO做额外的工作。 (注意:Django服务器使用搜索引擎抓取的数据来呈现初始屏幕,因此它们非空白。)
对于每个应用程序,它可能有也可能没有它自己的一组部分,取决于它的要求。
例子:
mydomain.com/item_page/1234 (load "item" app)
mydomain.com/dashboard (load "dashboard" app)
mydomain.com/account (load "account" app and default to "tab_1" view)
mydomain.com/account#tab_1 (load "tab_1" view of "account" app)
mydomain.com/account#tab_2 (load "tab_2" view of "account" app)
mydomain.com/post_item (load "post" app)
这完全是我的胡思乱想,我还没有看到,是由多个AngularJS应用程序的任何AngularJS例子。我想知道:
- 一个网站方法的多AngularJS应用程序是否可行?我应该注意哪些警告?这种方法在野外有没有任何示例网站?
- 如果可行,我如何在应用程序之间共享会话数据?
注意这篇文章是关于一个网站的多个AngularJS应用程序,而不是同一页面上的多个AngularJS应用程序。