В Ruby on Rails, как сделать HTML как partials в одном файле и JavaScript в другом файле, который будет включен в последний раз?

Много времени, в частичном, HTML (или ERB или HAML), а также JavaScript находится в одном файле, поэтому когда основной файл будет включать эти partials, HTML будет смешан с кодом JavaScript.

Однако сказано, что для быстрого дисплея содержания страницы, весь код Javascropt должен быть помещен в конце файла HTML. В этом случае существует ли надлежащий или стандартный способ заставить это произойти? Возможно, использование 1 частичного как HTML и 1 частичное как JavaScript, и включает 2 различных partials (HTML как корректное место и JavaScript около конца файла?)

(Это связано с тем, Если блок кода JavaScript не в конце файла HTML, но использует $ jQuery (документ) .ready (функция () {...}), это замедлит отображение страницы?)

1
задан Community 23 May 2017 в 12:01
поделиться

1 ответ

В свой файл макета вы можете поместить нижний колонтитул, в который вы можете загрузить свой Javascript (обычно такие вещи, как аналитика, которые не нужно загружать раньше). Затем определите в ваших представлениях content_for , который включает ваш партиал Javascript. В результате этот Javascript будет размещен в конце страницы.

В макете:

<div id="footer">
  <%= yield :footer %>
</div>

В ваших представлениях / разделах:

<% content_for :footer %>
  <script type="text/javascript">
     // Some Javascript
  </script>
<% end %>

или

<% content_for :footer %>
  <%= render :partial => "path_to_some_javascript" %>
<% end %>
2
ответ дан 2 September 2019 в 22:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: