0

我有一个在 Heroku 中运行相当缓慢的 rails 应用程序,我假设由于数据库和 rails,网页加载缓慢。所以我想让它成为可能的是有一段javascript,它只会加载Rails内容或一个在整个页面加载后包含rails的div。

所以像这样

LOAD HTML AND CSS, ONCE FULLY LOADED --> DISPLAY [JS SPIN][1] --> DISPLAY DIV OR RAILS

这将如何完成?谢谢

4

2 回答 2

0

你的问题非常模糊,但这是你需要去的方向

  1. 从您的视图中删除内容
  2. 向视图添加微调器 gif
  3. 在 Javascript 中,一旦 DOM 准备就绪,发送API 请求以获取此慢速信息
  4. 使 gif 微调器消失
  5. 将您的信息注入页面

这基本上是一个 Javascript 问题,而不是 Rails。

于 2013-08-30T19:45:35.153 回答
0

我猜你可能有一个静态页面,它使用 AJAX 调用从应用程序中的路由填充 div。因此,您将拥有一个public纯 HTML 页面,该页面会加载 jQuery,例如,然后进行适当的 AJAX 调用以从 rails 加载内容。这将是对仅呈现部分或没有布局的模板的 rails 操作的请求。取决于你需要什么,但基本上:

def my_action
  render layout: false
end

然后,单独的视图模板my_action将在响应中呈现。前面的 AJAX 调用只是将响应中的 HTML 附加到您选择的容器中。

这有帮助吗?

于 2013-08-30T19:48:42.180 回答