AngularJS:多页网站
Posted
技术标签:
【中文标题】AngularJS:多页网站【英文标题】:AngularJS : Multipage Website 【发布时间】:2015-06-07 05:01:57 【问题描述】:学习angularjs快一个月了。到目前为止,我所了解的是,尽管您也可以创建多页应用程序/网站,但 angularjs 会强制您创建 SPA,但我不知道如何,因为我没有找到好的示例。甚至 angularjs 种子项目都在使用 SPA 概念。
通过多页网站,我需要回答的一些问题是:
Multipage 应用程序能否像 SPA 一样轻松处理查询参数?如果是,那怎么办?即我们会使用 ngRoute 还是别的什么?
到目前为止,我已经得出结论,如果两个控制器位于不同的页面上,除了使用 localStorage、sessionStorage 或 cookie 之外,没有其他方法可以通信它们。对吧?
我们能否跨多个页面处理全局事件?即,如果打开两个选项卡并且在第一个选项卡上用户注销,我会在第二页上收到事件通知吗? (嗯,我敢肯定,但专家可以更好地判断)
虽然 SPA 很容易实现(对我来说很好)并且使 html 片段易于处理,但我现在没有这种情况,因为它不是我正在构建的应用程序,我有一个复杂的网站,SPA 不是合适的。简而言之,我不想使用 ng-view。因此,如果可能,请提供示例指导。
【问题讨论】:
【参考方案1】:如果不使用 ng-view,那么 $route 几乎没用。在这种情况下,您将不得不手动处理参数
你是对的。
angularjs 无法在两个选项卡之间进行通信。 Angularjs 将在两个选项卡中独立实例化。您必须从服务器端维护它到打开的选项卡
【讨论】:
1.我认为除了手动处理之外,肯定还有其他方法。 2. 谢谢。 3. 为什么?我们不能使用 $broadcast 和 $on 事件吗? 1.也许 :) 3. 好吧,$broadcast 或 $emit 仅适用于单个原型继承范围链。但是当你在两个选项卡中打开它时,会有两个不同的原型继承范围。这意味着两组角度应用程序,范围,注入器所有东西。将如何沟通? 3.你有一个很好的观点。谢谢。但第一个问题是我目前最大的问题。以上是关于AngularJS:多页网站的主要内容,如果未能解决你的问题,请参考以下文章