什么是单页应用程序(SPA)?

What actually is Single Page Application(SPA)?

这是我对SPA的理解。

它是一个应用程序,用户在响应任何用户触发的事件时感觉自己在同一页面上。 基本上整个页面都不会被提交,一个 ajax 请求将在后台触发一个事件,响应将呈现在同一页面上。 所以它的速度很快(因为没有提交整个页面)并且响应速度更快(即使 ajax 请求正在处理中,这意味着 will/can 一些屏幕用户仍然可以采取行动 )

所以根据我的理解,任何完全基于 ajax 的网络应用程序都不会提交整个页面 document.form.submit(同步)是一个单页应用程序,无论它是否使用控制器、路由等。 对吗?

我已经通过 SPA wiki 并且感觉应用程序是完全基于 如果不使用控制器、路由等,ajax 的可能不是 SPA

@MSach。此外,无论您为 SPA 写什么都非常正确,

  • 首先,SPA 是一个网络应用程序,实际上适合单个 提供出色用户体验并加载所有内容的网页 第一页上需要的内容。
  • SPA 也是丰富用户体验的理想选择,它通过保持页面流畅移动来让用户真正参与到应用程序中,因为 客户端导航和其他两个一样重要 减少往返,这意味着他们之间的行程会减少 整个页面的客户端和服务器以及更少 post 的背面。
  • SPA 通常也会在客户端保留重要状态,无论它是在缓存中、在浏览器内存中还是关闭到本地 storage.You 可以在初始加载时加载您需要的数据和视图,但是只是用户绝对会立即使用的部分,然后您可以加载 其余部分异步按需。然后当用户去 应用程序的其他部分,我们可以逐步下载其他 需要的功能和数据。
  • Facebook 和 Gmail 等应用都有 SPA的特点,还有一些应用也是SPA。