Página recarregada / atualizada a cada 5 segundos usando Turbolinks – JS, Rails, JQuery

Ambiente

Rails, Turbolinks

Problema

Recarregar a página automaticamente sem mostrar o recarregamento terrível da página para o usuário, a menos que algo tenha mudado

Solução

$(document).on('ready page:load', function() {
var REFRESH_INTERVAL_IN_MILLIS = 5000;
if ($('.f-pending-message').length > 0) {
setTimeout
(function(){
#disable page scrolling to top after loading page content
Turbolinks.enableTransitionCache(true);

# pass current page url to visit method
Turbolinks.visit(location.toString());

#enable page scroll reset in case user clicks other link
Turbolinks.enableTransitionCache(false);
}, REFRESH_INTERVAL_IN_MILLIS);
}
});