2015-12-02 51 views
1

我有一個顯示一些狀態信息的頁面。該頁面在沒有任何用戶輸入的PC上運行,並且需要每隔幾分鐘刷新一次。使用Turbolinks在Rails 4中定期重新加載頁面

我可以用它來刷新元標記,但這看起來很粗糙。它強制刷新所有的資產和醜陋閃爍的原因。 Turbolinks通過更智能的頁面加載在其他地方做得很好。我可以使用自動刷新工作嗎?

我很感激任何關於如何使這項工作更好的建議。

+1

爲什麼你需要刷新?你不能實現一些Ajax或更漂亮的解決方案嗎? –

+0

我從來沒有這樣做過。我甚至不知道從哪裏開始。如果你能指出我正確的方向,那將會有所幫助。 – comphelp

+2

'$ .ajax('/ your/url')。succes(function(){//對反饋進行一些處理})',只是google通過ajax進行定期更新。或者查看構建聊天的教程。 –

回答

0

試試這個:

$(document).on('ready page:load', function() { 
    var SECONDS = 5; 
    setTimeout(function(){ 
     Turbolinks.enableTransitionCache(true); 
     Turbolinks.visit(location.toString()); 
     Turbolinks.enableTransitionCache(false); 
    }, SECONDS * 5); 
}); 
1

這是我最近Turbolinks 5.下使用不得不添加一些變量,從重裝阻止它一旦用戶瀏覽離開該頁面等

<script> 
    if(!window.reloadTimer) { 
    var SECONDS = 30; 
    window.reloadTimer=setTimeout(function(){ 
     console.log("Reload!"); 
     window.reloadTimer=undefined; 
     Turbolinks.visit(location.toString(),{action: "replace"}); 
    }, SECONDS * 1000); 
    document.addEventListener("turbolinks:visit",function() {clearTimeout(window.reloadTimer);window.reloadTimer=undefined;}); 
    } 
</script> 
+0

工作得很好,這是一個使用turbolinks給我的新方法。謝謝! – Blaze

相關問題