angularjs - 前端模板与后端模板

标签 angularjs node.js handlebars.js pug templating

为什么客户端和服务器端都有模板引擎?在服务器端处理路由不是很自然吗?在什么情况下最好在服务器端进行路由和模板化?在客户端?在某些情况下您想同时使用这两种方法吗?

我环顾四周,但没有找到任何可以简单解释这一点的东西。我想我错过了什么。

谢谢!

最佳答案

让我一一回答你的问题:

为什么客户端和服务器端都有模板引擎? 很简单,减少服务器端的负载!想象一下,成千上万的用户向服务器端引擎(让我称之为网络/应用程序服务器)请求,并且所有请求都从服务器集群处理和服务(以主机为代价)。相信我,从服务器的 Angular 来看,这是非常昂贵的。另一种选择是只将数据提供给执行表示逻辑的客户端引擎。由于它是客户端中的单个用户数据/逻辑,因此它重量轻且速度快。关键是它减少了服务器的负载。

在服务器端处理路由不是很自然吗? 这不仅很自然,而且必须在服务器端做(开始)。但是,如前所述,在客户端执行表示逻辑可以使用户体验更好。这就是带有 AngularJS 等客户端框架的单页应用程序的诞生方式!

在什么情况下最好在服务器端进行路由和模板化? 在服务器端的情况下不使用术语模板。但是,表示模板(布局和组件)主要在客户端完成,功能模板(数据)在服务器端完成。服务器端模板只是网络服务 (API)。

在客户端呢? 如前所述,所有表示层内容(HTML、CSS、JavaScript)。

在某些情况下您想同时使用两者吗? 我会说,在所有情况下。然而,最好的选择是门户网站,而不是网站。

希望我理解您的问题并且我的回答对您有所帮助。

关于angularjs - 前端模板与后端模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27759774/

相关文章:

node.js - 使用 Node js 进行 MP3 文件直播

javascript - 如何将 Ember 查询参数与 beforeModel 和 select 一起使用?

javascript - 在 angularjs 中为什么我们在 angular.module() 函数中使用 [] ?

javascript - AngularJS $location 目录

javascript - 类型错误 : Cannot read property 'getGames' of undefined

javascript - 在 Promise 中使用 async 、 double then() 的正确方法? node8,真的需要 babel 到 es5 吗?

javascript - 检查文件是否存在,如果存在则返回

node.js - 如何在 Express 中布置 Handlebars 部分

javascript - #each 循环中的 Handlebars.js 助手返回相同的结果?

javascript - 为什么 uglify 不适用于 gulp 中的 javascript 文件