vue3.0의 새로운 기능은 무엇입니까

青灯夜游
풀어 주다: 2023-01-13 00:45:17
원래의
30824명이 탐색했습니다.

vue3.0의 새로운 기능은 다음과 같습니다. 1. 성능은 vue2.x보다 1.2~2배 향상됩니다. 2. 트리 흔들기 지원 3. 도입된 Composition API 5. 세 가지 구성 요소 추가; (조각, 텔레포트, 서스펜스) 등

vue3.0의 새로운 기능은 무엇입니까

이 튜토리얼의 운영 환경: Windows 7 시스템, vue 버전 3.0, DELL G3 컴퓨터.

vue3에서 제공하는 6가지 새로운 기능

  • 성능: vue2보다 1.2~2배 향상. React Hooks
  • Custom Renderer API: 노출된 사용자 정의 렌더링 API
  • Fragment, Teleport(Protal), Suspense: 세 가지 새로운 구성 요소
  • 더 나은 TypeScript 지원: TS
  • Performance

에 대한 지원이 향상되었습니다. Vue3 .0은 성능 측면에서 Vue2.x보다 1.2~2배 빠릅니다.

가상 DOM 구현 재작성

  • 런타임 컴파일

  • 정적 부스팅 및 이벤트 리스너 캐싱

  • SSR 속도 개선

  • 3중 흔들림 지원

Vue3의 핵심 API 기능과 작은 크기.

Composition API

Vue2.x에서는 일반적으로 믹스인을 사용하여 로직 코드를 재사용하는데 편리하지만 코드 소스가 명확하지 않고 메소드 속성이 충돌할 수 있다는 문제도 있습니다. 그래서 Vue3.x에서는 순수 함수를 사용하여 코드를 분할하고 재사용하는 Composition API(컴포지션 API)를 도입했습니다. React Hooks와 비슷한 개념입니다.

더 나은 논리 재사용 및 코드 구성

더 나은 유형 추론
  • Fragment, Teleport, Suspense

세 가지 새로운 구성 요소. Fragment

Vue2.x를 작성할 때 컴포넌트가 루트 노드여야 하기 때문에 일부 의미 없는 노드가 랩핑을 위해 추가되는 경우가 많습니다. 이 문제를 해결하기 위해 Fragment 컴포넌트가 사용됩니다(React의 Fragment 컴포넌트와 동일).

Teleport

Teleport는 실제로 React의 포털입니다. Portal은 상위 구성 요소 외부에 존재하는 DOM 노드에 하위 노드를 렌더링하기 위한 탁월한 솔루션을 제공합니다.

포털의 일반적인 사용 사례는 상위 구성 요소에 오버플로(숨김 또는 Z-색인 스타일)가 있지만 해당 컨테이너에서 시각적으로 "점프 아웃"하려면 하위 구성 요소가 필요한 경우입니다. 예를 들어 대화 상자, 플로팅 카드, 프롬프트 상자 등이 있습니다.

Suspense

이 역시 React의 Suspense와 동일합니다.

Suspense를 사용하면 렌더링하기 전에 구성 요소를 "대기"하고 기다리는 동안 대체 콘텐츠를 표시할 수 있습니다.

더 나은 TypeScript 지원

Vue3.x는 TypeScript로 다시 작성되었습니다. 개발자는 Vue3.x를 사용할 때 TS가 코딩에 제공하는 편리함을 완전히 경험할 수 있습니다.

Custom Renderer API

이 API는 가상 DOM의 렌더링 규칙을 정의합니다. 즉, 사용자 정의 API를 사용하면 크로스 플랫폼 목적을 달성할 수 있습니다.

마지막으로: Vue3.0은 어떻게 더 빨라지나요?

diff 알고리즘 최적화

  • Vue2의 가상 DOM을 전체적으로 비교합니다.

    Vue3은 정적 태그를 추가합니다
    • hoistStatic 정적 개선
  • Vue2에서는 요소가 업데이트에 참여하는지 여부에 관계없이 업데이트에 참여하지 않는 요소에 대해 생성한 다음

    Vue3을 렌더링할 때마다 다시 수행되며, 정적으로 승격됩니다. 이러한 요소는 한 번만 생성되며 렌더링
    • cacheHandlers 이벤트 중에 직접 재사용할 수 있습니다. 리스너 캐시
  • 기본적으로 onClick은 동적 바인딩으로 간주되므로 변경 사항이 매번 추적됩니다. 그러나 동일한 기능이므로 변경 사항을 직접 캐시하고 재사용할 수 있습니다

    • ssr 렌더링
  • 정적 콘텐츠가 많은 경우 콘텐츠는 순수 문자열로 버퍼에 푸시됩니다. 동적 바인딩이 있어도 템플릿 보간을 통해 삽입됩니다. Virtual DOM을 통한 렌더링보다 빠릅니다. Many, Many

    정적 콘텐츠가 특정 수준에 도달하면 _createStaticVNode 메서드를 사용하여 클라이언트 측에서 정적 노드를 생성합니다. 이러한 정적 노드는 직접적으로 innerHtml이므로 객체를 생성한 다음 객체를 기반으로 렌더링할 필요가 없습니다.
    • 더 많은 프로그래밍 관련 지식을 보려면
    프로그래밍 비디오
  • 를 방문하세요! !

위 내용은 vue3.0의 새로운 기능은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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