핵심 개념의 웹팩 연구 노트 (b)는 이해하고 간단 웹팩 연구 노트 (A) 설치 및 재판을 사용하는

온 기사 기록은 초기 설치하고 여기에 기본적인 사용을 웹팩이 상대적으로 완료, 기본 프로젝트를 빌드 할 웹팩을 사용하는 방법에 대한 기록입니다


 

4 개 핵심 개념 1. 웹팩

  • 입구 (입구) : 입구 모듈을 구축 할 수있는 프로젝트를 선택, 자신이이 문서의 시작 지점을 기준으로 전체 프로젝트를 구축 할 것입니다.
  • 출력 (출력) : 컴파일 된 파일 저장 디렉토리의 건설, 지정된 폴더를 건설하는 프로젝트의 출력.
  • 로더 : 비 파일의 웹팩 유형 및 패키지 빌드를 처리 할 수 ​​JS.
  • 플러그인 (플러그인) : 로더 기능보다 더 강력한, 당신은 더 복잡한 작업을 수행 할 수 있습니다.

 

2. 타겟 Benpian

완전한 프론트 엔드 프로젝트를 빌드 웹팩 사용하여,이 프로젝트는 JS, HTML / CSS, 이미지 파일이 포함되어 있습니다. 프로젝트가 제대로 건설하고하고 실행 내장 dev에 서버에서 할 수 있도록.

그것은 수행해야합니다 :

  1. 입구 구성 입력.
  2. 관련 : 그것은 예를 들어, 생산 또는 개발 모드 패키지에 명령에 매개 변수를 추가 한 후 모든 시간을 구성 할 필요가 없습니다에 올 때.
  3. 구성 로더, 그래서 웹팩는 CSS, 사진 및 기타 파일을 포장 할 수 있습니다.
  4. 구성 플러그인 패키지 HTML, 추출 CSS.
  5. 프로젝트를 실행하십시오.

참고 : 모든 명령은 프로젝트의 루트 디렉토리에 수행 할 것입니다.

 

3. 시작 건물 프로젝트

 

건물 3.1 기준

이 방법의 첫 번째 기사에 따르면, 우리는 먼저 기본 프로젝트 blog2을 만들어 :

 SRC 사용자 정의 폴더, 개인 습관에 따라 다음과 같은 구조를 만들 :

 

3.2 구성 준비

(참고 많은 수의 공식 구성 예)를 다음과 같이 루트 디렉토리 webpack.config.js 새 프로필에서 (package.json과 유사), 구성 파일의 기본 구조의 내용은 다음과 같습니다

CONST 경로 = ( '패스'요구 ); 

module.exports = { 

};

 

주 : 이후의 모든 단계가 이전 단계까지 기본 구성 증가에 배치되며, 현재의 구성이 굵은 단계, 이해를 용이하게하기 위해, 전체 구성 프로필에서 볼 수 있도록하는 것입니다. 

 

4 웹팩 구성 관리 프로젝트를 시작

 

4.1 입출구 구성

CONST 경로 = ( '패스'요구 ); 

module.exports = {   입구 :

 './src/js/index.js' , 

  출력 { 
    경로 : path.resolve (__ dirname은, 'DIST' ) 
    이름 : '의 JS / 1 세대 [해시] .bundle.js' 
  }
 
};

항목 : 파일 경로를 구성하는 입구,

산출:

  경로 : 결과 폴더의 보존의 경로와 이름, 우리가, DIST 사용

  파일명 : 포장 후의 파일명 이름의 해시 값이 생성 될 수있다 [해시]을 사용하여, (테이프로는, 예를 들면, 예 DIST / JS 폴더 포장되어 있음).

 

4.2 구성 패키지 모드

우리가 말했다 이전 기사, 웹팩이 개발 모델 및 생산 환경, 구성되지 않은 경우 경고를 생성합니다, 우리가 이전에 실행 매개 변수를 수행하기 위해 사용하고, 지금 우리는 그래서 더, 구성 파일에 추가 편의상, 다음과 같은 구성 :

CONST 경로 = ( '패스'요구 ); 

module.exports = { 
  입구 : './src/js/index.js' , 
  출력 { 
    경로 : path.resolve (__ dirname은, 'DIST' ) 
    이름 : '의 JS / 1 세대 [해시] .bundle.js' 
  } 모드 :

   '생산' 

};

모드 : 두 개의 매개 변수, 개발 모델이 있습니다  개발, 생산 모델  생산

 

4.3 dev에 서버 구성

우리는 사후 구성 콘센트가 패키지를 실행할 수 있습니다, 입구. 그러나 지난 글에서, 우리는이 확실히 개발 과정에 적용 할 수 없습니다 자신의 HTML과 JS를 구축 할 수있는 완성 된 패키지 테스트의 소개 테스트. 우리는 웹팩-dev에 서버를 통해 현지 서비스 및 코드를 디버깅을 시작 할 수 있습니다.

 

4.3.1 다운로드 및 설치

NPM 설치 웹팩-DEV-서버 -s를

 

4.3.2 구성

CONST 경로 = ( '패스'요구 ); 

module.exports = { 
  입구 : './src/js/index.js' , 
  출력 { 
    경로 : path.resolve (__ dirname은, 'DIST' ) 
    이름 : '의 JS / 1 세대 [해시] .bundle.js' 
  } 
  모드 : '생산' ,   devServer : { 
    contentBase :

 './dist' , 
    인라인 : 사실 
  }
 
};

devServer :

  contentBase : 디렉토리를 실행해야

  인라인 : 실시간 업데이트 여부

  포트 : 포트 번호를 설정할 수 있습니다

 

4.3.3 간체 구성

일반적으로 우리는 명령은 시작 :

웹팩-DEV-서버

너무 많은 문제는, 우리는 모양을 구성 package.json에 갈 수 있습니다 :

스크립트에서이 하나, 당신은 명령을 구성 할 수 있습니다 NPM 정의를 실행하고, 우리는 함께 붙어 :

"스크립트" : { 

  "DEV": "웹팩-DEV-서버 --open --inline" 

}

자동 --inline를 대신하여 실시간으로 브라우저 페이지 새로 고침을 열 --open를 대신하여

일단 구성되면, 우리는 콘솔 입력 :

NPM 실행 DEV

당신은 우리가 현재 HTML 파일을 포장하지 않기 때문에 시작 후, 우리는 브라우저에서 실제로 공개, 파일 디렉토리가 아닌 HTML 페이지, 프로젝트를 시작할 수 있습니다.

 

4.4 구성 로더

우리가 웹팩 패키지가 아닌 JS 파일을 필요로하는 경우에, 우리는 CSS, 사진 및 기타 파일 패키지를 포함한 설치 구성을 수행해야합니다. 로더의 유형은 매우 수있는 공식 웹 사이트 로더 모듈 자신의 프로젝트에 대한 찾기 로더. 다음으로 우리는 로더 프로젝트를 설치해야합니다 :

 

4.4.1 다운로드 및 설치 :

장착 스타일 로더 CSS-로더 스타일의 CSS를 포장하는 데 사용

NPM 설치 스타일 로더 CSS 로더 -s를

설치 파일 로더 파일을 패키지로 사용을

NPM 설치  파일 -loader -s

설치 HTML-withimg 로더 html로에서 그림을 포장하는 데 사용을

NPM 설치 HTML-withimg 로더가 -s

 

4.4.2 구성 :

CONST 경로 = ( '패스'요구 ); 

module.exports = { 
  입구 : './src/js/index.js' , 
  출력 { 
    경로 : path.resolve (__ dirname은, 'DIST' ) 
    이름 : '의 JS / 1 세대 [해시] .bundle.js' 
  } 
  모드 : '생산' , 
  devServer : { 
    contentBase : './dist' , 
    인라인 : 사실 
  }, 
  모듈 { 
    규칙 : [ 
      {시험 :
 /\.css$/, 사용 : [ '스타일 로더', ' CSS 로더 ' ]}, 
      {시험 : /\.(jpg|png|jpeg)$/ 사용'}, 
      {시험 : /\.html$/ 사용 ', HTML withimg 로더' } 
    ] 
  }
 
};

 

참고 : 구성 할 때 스타일 로더의 앞에 배치 할 필요가, 또는 오류 일 것이다.

구성 단위:

  규칙 :

    테스트 : 파일이 정규 표현식 매칭, 지원을 나타냅니다.

    사용 대응 로더를 수행, 다음 값이 파라미터 수 있으며, URL을 마찬가지로 제한 파일 크기를 지칭 이름은 경로 설정 파일 이름 [이름] 원래 파일 이름 [EXT] 오리지널 파일 확장자이다.

 

4.5 플러그인 구성 플러그인

우리는 프론트 로더가 웹팩 패키지 CSS, 이미지, 우리가 지금 필요한 HTML 콘텐츠 패키지 구성을 할 수 있습니다 구성.

우리는 또한 항목 페이지로, src 디렉토리에 index.html 파일을 작성해야합니다.

 

4.5.1 다운로드 및 설치

HTML 파일을 패키징하는 데 사용되는 HTML-웹팩 - 플러그인을 다운로드하여 설치

NPM 설치 HTML-웹팩 - 플러그인 -s를

다운로드 및 설치  , 메모를 CSS를 분할 추출물 텍스트 웹팩 - 플러그인 패키지를 : 당신이 @next의 최신 버전을 설치해야합니다

NPM 설치 추출물 - 텍스트 웹팩 - 플러그인 @ 다음 -s

 

4.5.2 구성

CONST 경로 = ( '패스'요구 );
const를 HtmlWebpackPlugin = 필요 ( 'HTML-웹팩 - 플러그인' ); 
const를 ExtractTextPlugin = 필요 ( '추출 텍스트-웹팩 - 플러그인' ); 

module.exports = { 
  입구 : './src/js/index.js' , 
  출력 { 
    경로 : path.resolve (__ dirname은, 'DIST' ) 
    이름 : '의 JS / 1 세대 [해시] .bundle.js' 
  } 
  모드 : '생산' , 
  devServer : { 
    contentBase : './dist' , 
    인라인 : 사실 
  } 

  모듈 : { 
    규칙 :
      { 
        시험 : /\.css$/ , 
         사용 : ExtractTextPlugin.extract ({ 
          대체 : '스타일 로더' , 
          용도 : [{ 
            로더 : 'CSS 로더' 
          }] 
          publicPath : '../' 
        })  
      }, 
      { 
        시험 : /\.(jpg|png|jpeg)$/는 , 
        사용 '?.. 파일 로더 제한 = 1024 = 이름 / IMG / [이름] [내선]  
      }, 
      { 
        시험 : /\.html$/ , 
        사용 : 'HTML-withimg 로더를'  
      } 
    ] 
  },

   플러그인 :
    새로운 새로운 ExtractTextPlugin ( './ CSS / [이름] .CSS' ),
     새로운 새로운 HtmlWebpackPlugin ({ 
      틀 : './src/index.html' , 
      파일 이름 : 'index.html을'은 , 
      스크립트의 축소 : { 
        // 따옴표 제거 
        removeAttributeQuotes를 : true로 ,
         // 참고 제거 
        removeComments를 : true로 ,
         // 빈 속성 제거 
        removeEmptyAttributes를 : true로 ,
         // 전송 공간 제거 
        collapseWhitespace를 : true로 
      } 
    }) 
  ]
 
};

처음에 우리는 플러그인의 도입을 필요로합니다,

별도의 플러그 배열로 사용하는 CSS는 로더에 맞게 필요

ExtractTextPlugin.extract 구문으로
publicPath 프로젝트의 경로를 조정, 경로 부하를 설정
 

플러그인 : 플러그 배열

  새로운 추출물 텍스트-웹팩 - 플러그인 개체 만들기

    설정 추출 CSS의 위치와 이름

  새 HTML-웹팩 - 플러그인 개체 만들기

    템플릿 : 메인 HTML 파일의 내용을 사용하여

    파일명 : 이름 후에 생성 패키지가 기본이 또한 사용될 수있다 index.html을 [해시]
    작게하다는 : 공정 압축 옵션을 포장
 
5. 구성
 
구성 후, 우리는 테스트가 성공하면, 먼저 제대로 아래의 코드를 작성해야합니다 :
SRC / JS /하는 index.js :
수입 '../css/index.css' 

을 console.log ( '안녕하세요 단어');

SRC / CSS / index.css :

 { 
  배경 컬러 : 아쿠아 마린 ; 
} 
#의 div1 {  : 200 픽셀 ; 
  높이 : 100 픽셀 ; 
  배경 이미지 : URL이 ( 'IMG / 1.JPG을 ../') ; 
}

SRC / IMG / 1.JPG

SRC / 된 index.html

<! DOCTYPE HTML > 
< HTML LANG = "에서 zh-CN" > 
< 선두 > 
    < 메타 캐릭터 = "UTF-8" > 
    < 타이틀 > blog2 </ 타이틀 > 
    < 메타 HTTP-당량 = "X-UA 호환" 콘텐츠 = " IE = 가장자리 " > 
    < 메타 이름 ="뷰포트 " 콘텐츠 ="초기 스케일 = 1.0, 사용자 확장 = NO 폭 = 기기 폭 " > 
</ 헤드 > 
< 본문 >
  = "div1" > </ DIV > 
  < DIV ID = "DIV2" > 
    第二个DIV 
    < IMG의 SRC = "../ SRC / IMG / 1.JPG" ALT = "T1"폭 = "300 픽셀" > 
  </ DIV > 
</ > 
</ HTML >

다음과 같이 시작 후, 효과는 다음과 같습니다

 

 

JS, CSS, IMG는 프로젝트가 작은 파트너를 다운로드 할 필요가있다, 구축되었음을 나타내는 일반적으로로드 할 수 있습니다.

 

>> Benpian 데모 프로젝트

 

6. 요약

웹팩 기능이 매우, 매우, 우리는 가장 좋은 방법은 문서를 보는 것을 배운다. 물론, 나를 위해, 흰색, 문서 이해가 안 간단하게 보일 수도 있지만, 지속적으로 처리하는 동안, 천천히 명확 웹팩의 변화를 인식하기 시작했다. 나는 새로운 학교 학생들도 인터넷에서 예를 살펴 수 있다는 제안에 대한 일반적인 이해가, 무엇을 할 수 있는지, 그것이 무엇인지, 그리고 기본 루틴 후, 다음 문서로 이동이 더 편리 할 것입니다.

그래서 Benpian 완료된 작은 프로젝트를 구축 웹팩 핵심 개념을 기반으로, 그리고 다시는 JS의 다른 프레임 워크 또는 관행 통합을 배우고 갈 수 있습니다.

 
 
링크 :
다음 : 연구

추천

출처www.cnblogs.com/chkhk/p/11631359.html