> 웹 프론트엔드 > JS 튜토리얼 > Vue가 패키징 도구를 구성하는 방법에 대한 자세한 설명

Vue가 패키징 도구를 구성하는 방법에 대한 자세한 설명

亚连
풀어 주다: 2018-06-11 17:31:27
원래의
2742명이 탐색했습니다.

이 글은 주로 Vue의 빠른 제로 구성 패키징 도구인 소포에 대한 자세한 설명을 소개합니다. 이제 공유하고 참고용으로 제공합니다.

이 기사에서는 Vue의 빠른 제로 구성 패키징 도구인 소포를 소개하고 모든 사람과 공유합니다. 세부 사항은 다음과 같습니다.

Features

  1. 빠른 포장

  2. 모든 리소스 포장

  3. 자동 변환

  4. 코드 분할

  5. 모듈 핫 교체

  6. 친숙한 오류 로깅

작동 방식

Parcel은 리소스 트리를 번들 트리로 변환합니다. 다른 많은 패키징 도구는 기본적으로 JavaScript 리소스를 기반으로 하며 다른 형식의 리소스가 첨부되어 있습니다. 예를 들어 JS 파일의 문자열에 인라인됩니다. Parcel은 파일 유형에 구애받지 않고 모든 유형의 리소스에서 예상대로 작동할 수 있으며 구성이 필요하지 않습니다.

리소스 트리 구축

Parcel은 JS, HTML, CSS, 이미지 파일 등 모든 유형의 단일 항목 리소스를 입력으로 허용합니다. Parcel에는 특정 파일 형식을 처리하는 방법을 아는 다양한 리소스 유형이 정의되어 있습니다. 리소스가 구문 분석되고 리소스 종속성이 추출되며 리소스가 최종 컴파일된 형식으로 변환됩니다. 이 프로세스는 리소스 트리를 생성합니다.

파일 번들 트리 구축

리소스 트리가 구축되면 리소스는 파일 번들 트리에 배치됩니다. 먼저 항목 리소스가 파일 번들로 생성된 다음 동적 import()가 하위 파일 번들로 생성되어 코드 분할이 트리거됩니다. 다양한 유형의 파일 리소스가 도입되면 형제 파일 번들이 생성됩니다. 예를 들어 CSS 파일을 JavaScript에 도입하면 JavaScript 파일에 해당하는 형제 파일 번들에 배치됩니다. 둘 이상의 번들에서 리소스를 참조하는 경우 리소스가 여러 번 패키지되지 않도록 번들 트리에서 가장 가까운 공통 조상으로 승격됩니다.

Packaging

파일 번들 트리가 구축된 후 각 파일 번들은 패키저에 의해 특정 파일 형식의 파일에 기록됩니다. 패키저는 각 리소스의 코드를 최종적으로 브라우저에 의해 로드되는 파일로 결합하는 방법을 알고 있습니다.

Configuration

초기화 프로젝트

 npm install -g parcel
 mkdir xxx && cd xxx && npm init -y
로그인 후 복사

Conversion

Babel

npm install babel-preset-env --save-dev
로그인 후 복사

루트 디렉터리 구성.babelrc

 {
  "presets": ["env"]
 }
로그인 후 복사

PostCSS

npm install postcss-modules autoprefixer --save-dev
로그인 후 복사

루트 디렉터리 구성.postcssrc

 {
  "modules": true,
  "plugins": {
   "autoprefixer": {
    "grid": true
   }
  }
 }
로그인 후 복사

지원 vue

npm install parcel-plugin-vue --save-dev
로그인 후 복사

항목 추가

 import App from './App.vue'
 import router from './router/index.js'
 import './assets/js/rem.js'
 window.onload = () => {
  const vm = new Vue({
   el: '#app',
   router,
   render: h => h(App)
  })
 }
로그인 후 복사

구성 index.html

 <body>
  <p id="app"></p>
  <script src="入口文件"></script>
 </body>
로그인 후 복사

라우팅 구성(코드 분할 - 지연 로딩)

 {
   path: &#39;home&#39;,
   component: () =>import(&#39;../pages/home.vue&#39;)
 }
로그인 후 복사

import()는 Promise를 반환하므로 async/await 구문을 로컬에서 사용하려는 경우 babel을 도입하세요. -polyfill

프로덕션 환경과 개발 환경을 구분하려면 package.json을 구성합니다.

dev --- 개발 환경

build --- 프로덕션 환경

 "scripts": {
   "dev": "parcel index.html -p 3700",
   "build": "parcel build index.html"
  }
로그인 후 복사

Done

http://localhost:3700/home을 방문하세요.

이 데모는 vue + Parcel + Grid +stylus: Parcel-vue

로 완성되었습니다. 위 내용은 제가 모든 사람을 위해 편집한 내용입니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다.

관련 기사:

vue.js에서 select의 값을 얻는 방법(자세한 튜토리얼)

Vue에서 슬롯을 사용하여 슬롯 배포 콘텐츠를 구현하는 방법

vue에서 캡슐화를 구현하는 방법 재사용된 구성 요소

JavaScript에서 날짜와 시간 차이를 판단하는 방법

vue2.0 하위 구성 요소에서 props 값을 변경하고 해당 값을 상위 구성 요소에 전달하는 방법

위 내용은 Vue가 패키징 도구를 구성하는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿