vue3의 새로운 기능인 Tree-Shaking에 대한 자세한 소개

Vue 3의 Tree-Shaking 기능에 대해 이야기할 때 빌드 도구 및 모듈 가져오기를 통해 구현된다는 점을 언급해야 합니다. 다음은 Vue 3에서 Tree-Shaking을 사용하는 방법을 자세히 설명합니다.

1. 빌드 도구를 구성합니다.

Vue 3 프로젝트에서 웹팩은 일반적으로 빌드에 사용됩니다. Tree-Shaking 기능을 활성화하려면 webpack 구성이 다음 요구 사항을 충족하는지 확인하십시오.

  • Tree-Shaking이 더 강력하고 효율적이므로 webpack 4 이상을 사용하십시오.
  • 프로덕션 모드에서 최적화를 활성화하려면 프로덕션에서 mode: 'production'을 설정해야 합니다.

2. 필요에 따라 구성 요소를 가져옵니다.

Vue 3에서는 전체 라이브러리를 직접 가져오는 대신 타사 구성 요소 라이브러리를 가져오기 위해 주문형 가져오기(주문형 로드)를 사용하는 것이 좋습니다. 이를 통해 최종 빌드 제품의 볼륨을 줄이고 Tree-Shaking을 구현할 수 있습니다.

Element Plus 구성 요소 라이브러리를 예로 들어 Button 및 Input 구성 요소만 사용해야 한다고 가정하면 다음과 같이 가져올 수 있습니다.


import {
    
     ElButton, ElInput } from 'element-plus';

이렇게 하면 최종 빌드 제품에 Button 및 Input 구성 요소의 코드만 패키징되고 사용되지 않는 다른 구성 요소의 코드는 생략됩니다.

3. 필요한 구성 요소를 등록합니다.

Vue 3에서는 app.component 메서드를 사용하여 필요한 구성 요소를 등록할 수 있습니다.


import {
    
     createApp } from 'vue';
import {
    
     ElButton, ElInput } from 'element-plus';

import App from './App.vue';

const app = createApp(App);

// 注册所需的组件
app.component('ElButton', ElButton);
app.component('ElInput', ElInput);

app.mount('#app');

위 코드에서는 App.component 메소드를 통해 Button 컴포넌트와 Input 컴포넌트를 각각 등록하여 템플릿에서 사용할 수 있도록 했습니다.

위의 단계를 통해 Tree-Shaking은 Button과 Input만 사용됨을 자동으로 감지하고 사용하지 않는 다른 구성 요소는 제거하여 최종 빌드 제품의 크기를 줄입니다.

모든 라이브러리 또는 프레임워크가 Tree-Shaking을 지원하는 것은 아니므로 사용하는 타사 구성 요소 라이브러리가 Tree-Shaking에 맞게 조정되었는지 또는 해당 주문형 가져오기 방법을 제공하는지 확인하십시오.

Tree-Shaking의 사용법과 효과를 자세히 설명하는 몇 가지 샘플 코드를 제공하십시오. 다음은 Vue 3에서 Tree-Shaking을 적용하는 간단한 예입니다.

다음과 같은 여러 기능을 포함하는 모듈 파일 utils.js가 있다고 가정합니다.


export function add(a, b) {
    
    
  return a + b;
}

export function subtract(a, b) {
    
    
  return a - b;
}

export function multiply(a, b) {
    
    
  return a * b;
}

export function divide(a, b) {
    
    
  return a / b;
}

export function square(n) {
    
    
  return n * n;
}

이제 Vue 구성 요소 파일 MyComponent.vue를 생성하고 그 안에 추가 및 빼기라는 두 가지 함수만 사용하겠습니다.

<template>
  <div>
    Result: {
    
    {
    
     result }}
  </div>
</template>

<script>
import {
    
     add, subtract } from './utils.js';

export default {
    
    
  data() {
    
    
    return {
    
    
      result: null
    };
  },
  mounted() {
    
    
    this.calculate();
  },
  methods: {
    
    
    calculate() {
    
    
      this.result = add(5, 3) - subtract(2, 1);
    }
  }
}
</script>

이 예에서는 더하기 및 빼기 기능만 가져오고 구성 요소의 마운트된 후크에서 계산을 수행합니다. 우리는 이 두 가지 기능만 사용하기 때문에 Tree-Shaking의 최적화는 사용하지 않는 기능을 자동으로 제거합니다.

패키지 출력을 빌드할 때 Tree-Shaking은 코드의 종속성을 분석하고 사용된 더하기 및 빼기 기능만 유지하고 사용하지 않는 기능을 제거합니다. 이렇게 하면 팩 크기가 최소화됩니다.

위의 예에서 Tree-Shaking의 효과는 두 가지 함수만 사용하고 참조되지 않은 다른 함수는 사용하지 않았기 때문에 매우 분명합니다. Tree-Shaking을 통해 최종 패키지 코드에는 사용되지 않은 기능이 아닌 사용된 기능만 포함됩니다.

Tree-Shaking을 구현하려면 빌드 도구(예: Webpack)가 올바르게 구성되고 해당 최적화 옵션이 활성화되어 있는지 확인해야 합니다.

위의 예가 Vue 3에서 Tree-Shaking의 사용법과 역할을 명확하게 설명하기를 바랍니다. 이에 대해 더 궁금한 점이 있으면 언제든지 문의하십시오.

Supongo que te gusta

Origin blog.csdn.net/qq_37609787/article/details/131227146
Recomendado
Clasificación