rails ruby-on-rails turbolinks

ruby on rails - rails - Rieles 4+Turbolinks: ¿JS en la cabeza o en la parte inferior del cuerpo?



turbolinks rails (2)

Además, application.js precompilado (según la canalización de activos) está activado y en cabeza de forma predeterminada. El razonamiento es que incluso si el js se carga antes que el resto de la página, dado que js es siempre el mismo, se cargará desde el caché a partir de la segunda solicitud, por lo que no hay ningún motivo real para publicarlo en la parte inferior de la página. cuerpo mas

Estoy acostumbrado a pegar mi JS en la parte inferior de mi elemento del cuerpo (según HTML5Boilerplate), pero como TurboLinks , que estará activado de manera predeterminada en Rails 4, vuelve a cargar el cuerpo (y el título) en cada solicitud, ¿tendría sentido? ¿Para poner mi JS en la cabeza de ahora en adelante? ¿Hay guías decentes o mejores prácticas en esto todavía?


Si está utilizando Turbolinks 5, ahora puede colocar Turbolinks en la parte inferior de su cuerpo (y seguir las mejores prácticas de desarrollo web para representar una página). Esto también ayuda con el SEO muy ligeramente. Simplemente agregue sus scripts al final de su cuerpo y agregue

data-turbolinks-eval="false"

a su etiqueta de script. Esto evitará que los turbolinks se evalúen después de la carga inicial de la página. Así es como se hace con el javascript_include_tag :

<%= javascript_include_tag ''application'', ''data-turbolinks-eval'' => ''false''%>

Entonces solo usa

$(document).on(''turbolinks:load'', function() { // code to be executed when use changes pages });