AngularJS与Express模板或纯HTML?优点和缺点?

Sam*_*ast 10 ejs node.js express angularjs pug

Express JS使用模板生成HTML,然后服务器将它们发送给客户端作为响应.可能有几个其他模板可以从中生成HTML.我能发现的是:

在我的应用程序中,我需要同时使用ExpressJS和AngularJs.我是这两种技术的新手.在学习角度时,我不得不在纯HTML中使用它.在学习ExpressJs之后,我意识到,为了使用angularjs,我需要在上述任何模板中使用它们,这些模板在发送给客户端时将转换为HTML.

现在,我想使用expressjs作为我的服务器和angularjs作为我的客户端应用程序.为此,我想我有两个选择.

选项1

我可以完全停止使用模板,并使用我们的NodeJS服务器通过发送简单的HTML文件进行响应.然后,这些HTML文件将包含AngularJS编码.然后,在客户端,AngularJS将充当我们的应用程序.它将从服务器请求其他HTML文档.或者它也可以像AJAX一样使用,我们只能请求信息片段更新页面的一部分而不是刷新整个页面以进行微小的更改.

选项2

我可以在expressjs模板(jade或ejs)中使用angularjs.

请帮助我理解两种选择的利弊.在这种情况下哪一个是您的选择.

Joh*_*sch 13

这是一个非常多的意见问题,Stack Overflow管理员讨厌任何有意见的东西,但这是我的经验和意见.

我现在做了几个使用纯静态文件(HTML,CSS和JavaScript)的应用程序,后端调用服务来传递数据.它减少了后端,无论它是什么(我已经使用Java和Node.js),只是作为一组服务URL,但它工作得非常好.

  • 你在两个系统的职责之间有一个很棒的强硬路线
  • 独立工作和测试每个人都非常容易
  • 错误通常在前端或后端非常明显(您只需要查看传输的数据)
  • 后端服务已准备好重新用于支持命令行中的备用UI或移动专用(如果需要)
  • 您可以使用一种技术开始后端(比如Node.js或Ruby on Rails),然后在需要时切换到其他内容.只要API保持不变,前端就不会知道.

  • 这种方法的更多好处:1.静态html页面可以通过CDN提供,并通过浏览器更容易缓存.2.首先加载静态页面,然后从服务器获取数据以完成动态部分,与首次从数据库获取数据并在发送到客户端之前使用它构建整个页面相比,页面开始加载的速度要快得多. (3认同)