我們創建了一個HTML5應用程序,它也可以在離線模式下工作。 HTML元素包含清單屬性,我們的清單包含所有必需的文件,以便能夠離線使用應用程序。我們試圖找到一種方法來以自動方式縮小我們的JavaScript文件,但也有一個工作清單文件(無需在縮小後手動編輯清單文件)。大多數情況下,當使用縮小的JavaScript文件時,最好使用文件名中的版本號或querystring變量來確保加載縮小的JavaScript文件的新版本,但與清單結合使用時效果不佳不支持更改查詢字符串變量或不同文件名的文件。Javascript縮小和HTML5清單
我們已經嘗試了AjaxMin和SquishIt,但無法得到這個工作。你們有任何想法或工作解決方案,使這種組合工作?
我們的HTML:
<html manifest="app.manifest">
我們的清單:
CACHE MANIFEST
NETWORK:
data
CACHE:
scripts/application/application.js
scripts/application/database.js
scripts/application/knockout.extensions.js
scripts/application/main.js
scripts/application/models.js
scripts/application/prototype.extensions.js
etc...
謝謝!
我不知道我明白了;爲什麼不簡單地在緩存清單中列出'all.js'(或者你想調用它的任何東西)? –
如果更改清單,請確保文件的** SIZE **更改。這是因爲標準需要重新加載清單文件 - 當其大小與緩存大小不同時,所有要緩存的項目都要重新加載。我不認爲修改時間或其他哈希被檢查。這可能比它看起來更難,比如「VERSION 1」和「VERSION 2」等。具有完全相同的字符數量,因此更改版本號通常效果不佳。我的訣竅是添加一個「X」(或某個字符)的註釋,並在任何新版本的末尾添加註釋。 –
爲了緩存項目被刷新,您需要重新加載清單文件,正如我在之前的評論中所述。否則,即使您的文件名稱相同,瀏覽器也不會加載新版本,但會繼續使用舊的緩存版本。 –