웹팩 中 해시 chunkhash

해시들은 일반적으로 자동 테이프에 대응 MD5 값을 생성 한 파일 이름에 대응 지어진 웹팩 통과 한 후, CDN 캐시와 함께 사용된다. 파일의 내용이 변경되는 경우, 해당 파일의 해시 값은 CDN 서버가 원본 서버에서 데이터를 해당 방아쇠를 당긴다, URL 주소를 해당 HTML 참조가 변경됩니다 변경됩니다 다음 로컬 캐시를 업데이트합니다.

해시시

해시 동일 생성 된 파일 해시 값을 구축, 전체 프로젝트의 구성과 연관되기 때문에 해시 계산은 전체 프로젝트의 구성, 동일한 건물 중에 생성 된 해시만큼 프로젝트 파일의 변경이 있기 때문에, 동일과 연관된 전체 프로젝트의 해시 값을 변경 지어 질 것이다.

콘센트 프로젝트는 전체 프로젝트를 빌드 해시 값을 검색합니다, 어떤 파일을 수정하기위한 다음 번 해시 인 경우, 캐시의 목적은 실패합니다.

chunkhash

각 구조물 생성 된 해시 값이 파일의 내용은 기본적으로 변경되지 않은 경우에도, 동일하지 않은 후, 해시 계산을 사용. 이 캐싱 효과를 구현하는 방법입니다 마찬가지로, 우리는 즉 chunkhash, 다른 해시 값 계산 방법이 필요합니다.

chunkhash 해시가 파일 엔트리 (엔트리)에 따라 파일 의존성 파싱 동일하지 않은, 구조는 대응하는 청크의 상기 대응하는 해시 값을 생성한다. 우리는 그 다음 우리가 우리가 코드 공공 도서관을 변경하지 않는 한, 당신은 해시 값이 영향을받지 않을 것이라는 점을 보장 할 수 있습니다, 해시 값을 생성하는 chunkhash 방법을 사용하여 공공 도서관과 프로그램 파일 입구 영역 구축 할 수있는 별도의 포장의 여러 프로덕션 환경에서 분리 .

인해 chunkhash 때문에 상품 마스터 파일 main.js 입구 및 main.css가이 있지만, 동일한 모듈로 패키지되므로 동일한 chunkhash 공유되기 때문에, 종속 대응이 상이한 공통 라이브러리 모듈이므로 별도 chunkhash 있기 때문에. 이 방법은 문서의 내용은 반복되지 않을 것이다 변경되지 않은만큼 라인에 구축 만들 때 보장

다음과 같이 구성입니다

출력 { 
    파일명 : "[이름] chunkhash]의 .js. ' 
    chunkFilename'[이름] chunkhash]의 .js. ' 
    publicPath : publishPath.publishPath publishPath.prefix + +'/ ' 
  }

 당신은 플러스 별도의 CSS 파일을 추출해야하는 경우

새로운 extractTextPlugin ({ 
      파일 이름 : '스타일 / [이름] [chunkhash] .CSS' 
    })

  

플러그인을 추가

CONST WebpackChunkHash 필요가 = ( '웹팩 청크 해시');
새로운 webpack.HashedModuleIdsPlugin (), 
    새로운 WebpackChunkHash ()

추천

출처www.cnblogs.com/buxiugangzi/p/11423481.html