2013-04-08 59 views

回答

0

用戶訪問turbolink啓用頁面後,即使禁用了turbolinks,當用戶按下後退按鈕,瀏覽器緩存頁面也會顯示,您無法禁用turbolinks效果。

後期部分沒有退避,而是格式化部分緩解設置data-no-turbolink到導致總是需要這樣

<div> 
    <a href="retrieve_always.html" data-no-turbolink>Special Page</a> 
    <a href="normal_page.html">NormalPage</a> 
</div> 

,也被檢索頁面的鏈接通過武力使正常的鏈路上逃跑,你可以設置data-no-turbolink更具全球

<div data-no-turbolink> 
    <a href="retrive_page1.html">Retrive page 1</a> 
    <a href="retrive_page2.html">Retrive page 2</a> 
</div> 

在這種情況下,所有的檢索需要的頁面被瀏覽器緩存不受turbolinks和因爲,早按下按鈕處理委託給瀏覽器。

+1

我不希望禁用turbolinks效果,我只是想將一個頁面標記爲「永遠不應該被緩存」,這樣turbolinks每次都能從服務器獲取它,就好像這是您第一次訪問該鏈接 – 2013-04-10 14:51:38

+0

您不能禁用以緩存頁面turbolinks。 Turbolinks總是緩存用戶訪問的頁面。如果您每次都渴望從服務器獲取數據,則應該在這個特殊頁面中放置''。 – yasuoza 2013-04-11 01:12:31

4

您可以通過以下方式使turbolink始終從服務器中爲所有頁面獲取頁面(至少在我的情況下是期望的行爲,因此點擊後退按鈕頁面也會更新):

// js 
Turbolinks.pagesCached(0); 

或者,根據doc禁用它的一個網站,只是一個data-no-transition-cache屬性添加到任何元素,因此,例如在網站上您不想被緩存它添加到身體:

<body data-no-transition-cache>...</body> 
0

簡答題是否定的,你不能禁用按下後退按鈕時顯示頁面的緩存副本。這種行爲將與瀏覽器的默認行爲不同,Turbolinks儘可能地嘗試模仿。

如果你去任何網站,點擊幾個鏈接,然後按後退按鈕,你會注意到瀏覽器顯示一個緩存副本。據我所知,不能在瀏覽器級別禁用。

相關問題