오프라인 모드에서도 작동하는 HTML5 애플리케이션을 만들었습니다. HTML 요소에는 매니페스트 특성이 포함되며 매니페스트에는 응용 프로그램을 오프라인으로 사용할 수 있도록 필요한 모든 파일이 포함됩니다. 우리는 javascript 파일을 자동화 된 방법으로 축소하는 방법을 찾으려고 노력하고 있지만 축소 된 후에 매니페스트 파일을 수동으로 편집 할 필요없이 작업 매니페스트 파일을 가지고 있습니다. 주로 축소 된 자바 스크립트 파일로 작업 할 때 파일 이름 또는 쿼리 문자열 변수의 버전 번호와 같은 것을 사용하여 새 버전의 자바 스크립트 파일이로드되는지 확인하는 것이 가장 좋지만 매니페스트와 함께 사용할 때는 잘 작동하지 않습니다 파일을 변경하는 querystring 변수 또는 다른 파일 이름을 지원하지 않습니다.자바 스크립트 확장 및 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"(또는 일부 문자) 주석을 추가하고 항상 새 버전으로 끝 부분에 하나를 첨부하는 것입니다. –
캐시 된 항목을 새로 고치려면 이전 메모에서 설명한대로 매니페스트 파일을 다시로드해야합니다. 그렇지 않으면 파일 이름이 같더라도 브라우저는 새 버전을로드하지 않고 캐시 된 이전 버전을 계속 사용합니다. –