我正在建立一个使用nodejs和express的网站。如何让页面中的分区动态化?Jade是用来做这个的吗?如果不是怎么做? angularjs是做什么用的?请帮帮我,我在谷歌上搜索了很多,但我不清楚它们的用法。
发布于 2014-01-08 16:34:11
Jade在服务器端创建浏览器中使用的html。浏览器执行对web服务器的请求,web服务器执行Jade,Jade将生成将被发送到浏览器的html。在过去的20年里,这种服务器端内容生成非常普遍,但在构建富internet应用程序时,它有相当多的缺点。这主要与性能和客户端状态跟踪有关。
AngularJS是一个类似客户端MVC/MVVM的框架,用于构建所谓的 (SPA),它允许您拥有完整的用户界面流程,所有内容生成和状态跟踪都在客户端完成。它甚至允许您构建离线应用程序。从开发人员的角度来看,这感觉更像是构建一个桌面应用程序,其中客户端知道用户界面的状态。从用户的角度来看,网站的响应会更流畅、更快,因为UI都是在本地生成的。
注意: SPA并不意味着你的网站只能有一个页面。这是一个技术术语,浏览器下载一个页面(~/index.html),其中包含完整或部分web应用程序。从技术上讲,用户永远不会离开这个页面,但是内容(页面)会从这个占位符页面动态地交换进来和换出。
向SPA提供数据的最常见方式是通过RESTful web服务。AngularJS附带了用于REST的builtin support。
一些开发人员将服务器端内容生成技术与AngularJS结合起来,但实际上并不需要这样做。
发布于 2014-01-08 18:05:32
Jade在服务器端和客户端都用作模板引擎。是的,它可以动态更新页面,你只需要将你的jade模板编译成javascript函数(使用jade -c或类似的东西)。
是的,您可以在其中使用angular.js,但我认为在您的项目中没有真正需要使用两个模板引擎。建议继续使用jade,除非您知道自己在做什么。
https://stackoverflow.com/questions/20989024
复制相似问题