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:多页网站的主要内容,如果未能解决你的问题,请参考以下文章

在断开的链接检查器 AngularJS 中找不到图像源

AngularJS 和处理 404 错误

为 AngularJs(1x)网站启用 SEO [重复]

如何在非 angularjs 网站上使用量角器?

用于 angularjs 网站的带有 json rpc 的节点服务器

从使用 AngularJS 开发的网站获取数据访问权限