为了执行基于Angular的应用程序,是否有义务运行节点服务器?

(说)我的项目是使用Laravel或简单的PHP在后端和我的前端编码使用Angular,我使用CDN的angular.js文件。 这应该是完美的。

我很困惑,当许多教程和书籍提到节点服务器是必需的,我们启动服务器,并开始监听某个端口。 运行angular度的过程完全不同于这种方式。

数据绑定或JSON格式的模型可以通过多种方式完成。 它可以从php后端交换,也可以通过运行在节点服务器上的JS完成。

实际上,我也可以运行一个没有任何服务器的Angular静态应用程序。 作为一个例子,我把JSON数据放在一些variables中,然后创build一个$ scope。 当然,数据会丢失(不能保存数据),但是应该运行。 对!

如果有人能澄清,我会高度赞赏,这是我的误解。

Angular是前端框架,这意味着您需要任何种类的后端/服务器来提供主页和加载所有脚本模板和资产。

它可以是nodeJS,或运行某个PHP框架的Apache / nginx服务器,或者甚至不需要使用框架或PHP,尽pipe您可能需要创build某种JSON / REST API才能使用Angular应用程序与您的数据库进行通信,但是如果您只想与第三方服务进行通信并在前端进行操作,则不需要在后端使用任何编程语言。 你可以从任何服务器提供index.html,并加载所有的JavaScript文件和资产

您可以在客户端和服务器端使用angular度,在客户端,您只需使用脚本标记引用cdn(或本地文件)(对于angular度1,angular度2需要稍微多点努力),也可以使用框架与节点js(服务器代码)例如在一个电子应用程序,在这种情况下,你将不得不安装模块与包pipe理器(如npm)。
请注意 ,这两个实现分别是前端

,你可以使用任何后端。 我认为AngularJS应用程序的大多数教程在后台运行NodeJS的主要原因是因为AngularJS和NodeJS都是基于javascript的框架,所以人们在看前端代码和后端代码看起来相同(没有新的语法)的情况下会很容易理解。

实际上,这就是为什么我喜欢MEAN栈的原因,因为你可以在你的应用程序事件中使用javascript到数据库级别!

MM ongoDB(数据库)

EE xpressJS(NodeJS库来处理不同的路由和HTTP请求,并build立API)

A一个 ngularJS(基于Javascript的前端框架)

NN odeJS(Javascript运行时可以在浏览器外执行,所以它可以在服务器上执行你的JS代码)。

Angular 1和Angular 2有很大不同。在v2中有很多变化,例如,以前的ng-model指令现在是[(ngModel)],ng-repeat现在是* ngFor等等。 组件和模板select器与Angular处理更多的行为相同。 有很多依赖关系,特别是System.js和typescript。