【发布时间】:2012-11-01 00:48:58
【问题描述】:
我正在寻找在请求未完成时开始查看网页的解决方案。例如,使用 Express 和 EJS,如果我查询多个数据源(我没有掌握),我必须等待在 "res.render" 之前检索我需要使用的所有数据。
是否可以先发送页面顶部,然后一个一个地阻塞?
感谢您的帮助!
【问题讨论】:
我正在寻找在请求未完成时开始查看网页的解决方案。例如,使用 Express 和 EJS,如果我查询多个数据源(我没有掌握),我必须等待在 "res.render" 之前检索我需要使用的所有数据。
是否可以先发送页面顶部,然后一个一个地阻塞?
感谢您的帮助!
【问题讨论】:
制作一个基本模板并使用它提供 res.render()。这将是用户看到的第一件事。
您必须编写一个客户端 .js 代码(使用“基本”页面调用)。这个在document.ready 上将发出ajax 调用来获取其他页面。为此,您需要启用其他路由,每个路由都有各自的内容。
ajax 调用的回调必须能够将检索到的内容附加到您的“基本页面”中。
应该可以。
(显然,有几种方法可以让这变得更复杂和更专业,但我认为@LeGilles 正在寻找一个“快速启动”)。
问候,
H.-
【讨论】:
您不能简单地渲染一半页面并通过服务器端编程等待数据完成加载页面。
您尝试做的最好的解决方案是 AJAX 调用。从客户端检索数据允许用户查看所有可用的静态内容,而无需等待获取数据驱动的内容。
这不是解决您的问题的最佳解决方案,即优化您对数据源的查询。
【讨论】: