2017-03-31 16 views
0

框架:角1.4.8在新標籤中打開相同的window.location.origin無緩存

我想創建一個新的標籤這需要舊卡具有相同的window.location.origin。但我想確保數據從服務器而不是從緩存中加載。

有一種方法可以打開新選項卡:window.open(window.location.origin)

但我找不到任何禁用緩存的選項in the API reference。我在window.location.reload方法中尋找類似於forcedReload的選項。

+1

您可以嘗試使用某個唯一值將額外的查詢參數附加到正在打開的網址(window.location.origin)。這樣你會強制緩存未命中。 – Claudio

+0

@Claudio如果我嘗試插入一些參數,將打開一個新窗口而不是選項卡。 – trex

回答

0

我用以下解決方案來:

... 
browser.openNewCleanTab = function (forcedReload = true) { 
    const openNewTab = function (url) { 
    return new Promise ((resolve, reject) => { 
     resolve(window.open(url)); 
    }); 
    }; 

    openNewTab(window.location.origin).then((newTab) => { 
    newTab.location.reload(forcedReload); 
    }); 
}; 

基本上,它會打開一個新的標籤,然後重新加載與forcedRelod

0

嘗試將這些元標記添加到頁面。它有助於在不使用緩存的情況下加載頁面。我希望該項目是ASP.NET

<!-- HTTP 1.1 --> 
<meta http-equiv="Cache-Control" content="no-store"/> 
<!-- HTTP 1.0 --> 
<meta http-equiv="Pragma" content="no-cache"/> 
<!-- Prevents caching at the Proxy Server --> 
<meta http-equiv="Expires" content="0"/> 
相關問題