当前位置: 首页 > 面试题库 >

AngularJS是否仅用于单页应用程序(SPA)?

程智明
2023-03-14
问题内容

我们正在寻找构建正在创建的应用程序前端的选项,并正在尝试评估一种对我们有用的工具,并为我们提供前进的最佳平台。

这是一个Node.js项目。我们最初的计划是使用Express并沿这条路线走,但是我们决定在开始此阶段之前,最好回顾一下那里的内容。我们的应用程序有几个我们认为不适合单页模型的领域,因为它们是从应用程序的角度关联的,而不是从一个角度来看的。

我们已经看到了一些可用于构建客户端的框架,例如Backbone.js,Meteor等,以及AngularJS。

这可能是一个相当明显的问题,但是我们似乎无法破译AngularJS是纯粹用于单页应用程序还是可以用于多页应用程序(例如Express)。

2013年7月17日更新
为了让大家保持联系,我将在整个html" target="_blank">过程中更新这个问题。现在,我们将一起构建所有内容,然后我们将看到效果如何。我们已经接触了一些比我们更胜任AngularJS的人员,并提出了一个问题,即如何拆分较大的共享上下文的应用程序,但在单个页面上可能太大。

共识是我们可以提供多个静态页面并创建仅与那些页面一起使用的AngularJS应用程序,从而有效地创建SPA的集合并使用标准链接将这些应用程序链接在一起。现在,我们的用例非常具体,因为我们的解决方案具有多个应用程序,并且正如我所说,我们将首先尝试单个代码库并从那里进行优化。

2016年6月18日更新
该项目跌宕起伏,所以我们从来没有回过头去做太多的事情。我们最近再次选择了它,但是不再使用angular而是使用React。我们仍在使用上一个更新中概述的架构,其中我们使用Express和自包含应用程序,因此,例如,我们/chat在Express中有一条路线可以服务我们的React聊天应用程序,而在另一条路线中/projects可以服务项目应用程序,以此类推。我们从某种角度看待它的方式是,每个应用程序都是其功能集的总根,它必须能够独立运行,才能将其本身视为一个应用程序。从技术上讲,所有信息都在那里,它只是基本表达,以及您想要使用的客户端应用程序构建优势的任何形式。


问题答案:

一点也不。您可以使用Angular来构建各种应用程序。客户端路由只是其中的一小部分。

您将拥有众多功能,这些功能将使您受益于客户端路由之外的其他功能:

  • 双向绑定
  • 模板化
  • 货币格式
  • 多元化
  • 可重用控件
  • RESTful API处理
  • AJAX处理
  • 模块化
  • 依赖注入

认为所有这些“只能在单个页面应用程序中使用”是很疯狂的。当然不是..这就像说“ jQuery仅用于带有动画的项目”。

如果适合您的项目,请使用它。



 类似资料:
  • 问题内容: 当我学到角度时,有两个问题困扰着我: 当用户刷新页面或点击后退按钮时,如何恢复状态? 如何在属于不同控制器的合并范围之间共享数据? 下面我展示了一个使用客户端会话存储的简单解决方案。在用户刷新页面或点击后退按钮后,它既允许共享公共数据,又可以自动恢复状态。 注意:事实证明,以下解决方案对于回答以下问题至关重要: 如何获得“后退”按钮以与AngularJSui路由器状态机一起使用? 问题

  • 我需要使用 laravel 5.3 和 vuejs 2 构建一个应用程序,因为我需要使用双向绑定而不是使用 jquery。 我需要用刀片模板设置视图。然后,我需要在每个页面中使用vuejs,如下所述。 资源/断言/js/组件/List.vue resources/asserts/views/post/index.blade.php 有Add。vue创建.blade。php等…在Add。vue 这是

  • 问题内容: 我有一个使用angularJS的单页Web应用程序。我需要打印某个页面的div。我尝试了以下方法: 该页面包含少量div(print.html) 控制器具有以下脚本: 此代码可打印所需的div,但存在问题。该语句代替了整个应用程序的主体,因为它是SPA。因此,当我刷新页面或再次单击“打印”按钮时,页面的全部内容将被删除。 问题答案:

  • 问题内容: 我正在使用window.onload调用必须在页面完全加载后执行的JavaScript代码。根据我的阅读,这是调用此类脚本的推荐方法。 但是,它不适用于某些Ajax网站,例如www.bing.com- 在完全呈现页面之前调用window.onload。 有什么建议? 问题答案: 简短的答案是,目前尚没有解决此问题的通用方法。 当AJAX发挥作用时,“页面”的定义很容易被替代- 很难说出

  • 我的应用程序将是: -单页应用程序(例如在角度/主干中) -基于Spring MVC的服务器。 我发现了许多关于使用Spring-Security的示例,其中登录页面、注销页面等都是HTMLs。Spring Security根据会话状态定向到适当的页面。 但就我而言,登录/注销页面将使用JavaScript - 与服务器进行登录/注销的所有交互都是通过HTTP(REST样式URL和响应JSON)进

  • 本文向大家介绍AngularJS教程之简单应用程序示例,包括了AngularJS教程之简单应用程序示例的使用技巧和注意事项,需要的朋友参考一下 按以下步骤来创建AngularJS应用  第1步:加载框架 作为一个纯粹的JavaScript框架,它可以使用<script>标签来添加。 第2步:使用ng-app指令定义AngularJS应用 第3步:用 ng-model指令定义的模式名称 <p>Ent