拥有在服务器和浏览器上渲染的JavaScript意味着什么?

时间:2014-10-12 20:26:08

标签: javascript

我经常看到人们说JavaScript的一个好处是你可以拥有一个适用于服务器和浏览器的代码库。但是,在我的任何node.js项目中,我都没有为后端和前端重复使用的代码。如果我在节点中编写Web服务器,为Angular中的前端应用程序提供一些静态资产,我的大多数后端代码都特定于非前端任务。

那么在后端和前端使用代码意味着什么或者看起来是什么意思?一个具体的例子是,我经常看到人们说React在服务器和浏览器上都呈现。大!但这有什么用呢?这是否严格用于自动化测试?

1 个答案:

答案 0 :(得分:2)

希望代码在客户端和服务器上运行的一般情况是,您可以:

  • 快速的客户端实施
  • 可靠的服务器端实施

因此,您可以使用代码检查用户输入以确保其正常并使其在客户端上运行,以便用户获得即时反馈并在服务器上运行相同的代码,以便用户无法绕过它并获取输入到系统中的错误。

或者您可以在客户端上运行复杂的代码,使用大量的Ajax和历史API构建页面,同时将其复制到后端,这样它仍适用于JavaScript失败的客户端(由于连接不良或缺乏支持(例如来自搜索引擎))并且如果加载了除主页之外的页面,则浏览器将加载正确的页面而不是加载主页,然后(可能不是立即)用所需页面替换它。