ホームページ  >  記事  >  ウェブフロントエンド  >  vue3.0の新機能は何ですか

vue3.0の新機能は何ですか

青灯夜游
青灯夜游オリジナル
2021-03-03 16:41:3730831ブラウズ

vue3.0 の新機能は次のとおりです: 1. vue2.x ブロックよりもパフォーマンスが 1.2 ~ 2 倍優れています; 2. ツリーシェイキングのサポート; 3. コンポジション API の導入; 4. カスタム レンダリング API の公開; 5 、3 つの新しいコンポーネント (フラグメント、テレポート、サスペンス) などが追加されます。

vue3.0の新機能は何ですか

このチュートリアルの動作環境: Windows7 システム、vue3.0 バージョン、DELL G3 コンピューター。

vue3 によってもたらされた 6 つの新機能

  • パフォーマンス: vue2.x ブロックより 1.2 ~ 2 倍優れています
  • ツリーシェイキングのサポート: サポートオンデマンド コンパイル、小さいサイズ
  • Composition API: React Hooks に似た組み合わせ API
  • Custom Renderer API: 公開されたカスタム レンダリング API
  • Fragment、Teleport (Protal)、サスペンス: 3 つの新しいコンポーネント
  • TypeScript サポートの向上: TS

パフォーマンス

Vue3.0 のサポートの向上パフォーマンスの面では、 Vue2.x よりも 1.2 ~ 2 倍高速です。

  • 仮想 DOM の実装の書き換え

  • ランタイム コンパイル

  • 静的プロモーションとイベント検出リスナーキャッシュ

  • SSR 速度の向上

三振サポート

Vue3.x コア APIすべてツリーシェーキングをサポートしています。これらの API は、インスタンス化中に直接挿入されるのではなく、パッケージを通じて導入されます。使用される関数または機能のみがパッケージ化されます (オンデマンド パッケージ化)。これは、より多くの機能とより小さなサイズを意味します。

Composition API

Vue2.x では、通常、ロジック コードを再利用するためにミックスインを使用します。便利ですが、いくつかの問題もあります。コードが明確ではないため、メソッドの属性が競合する可能性があります。そのため、Vue3.x では、純粋な関数を使用してコードを分割して再利用する、Composition API (合成 API) が導入されました。 React Hooks と同様の概念。

  • #ロジックの再利用とコード構成の改善
  • 型推論の改善

##フラグメント、テレポート、サスペンス

3新しいコンポーネントが追加されます。

Fragment

Vue2.x を書く場合、コンポーネントはルートノードでなければならないため、ラッピングのために意味のないノードが追加されることがよくあります。この問題を解決するために Fragment コンポーネントが使用されます (これは React の Fragment コンポーネントと同じです)。

Teleport

Teleport は実際には React のポータルです。 Portal は、親コンポーネントの外側に存在する DOM ノードに子ノードをレンダリングするための優れたソリューションを提供します。

ポータルの一般的な使用例は、親コンポーネントにオーバーフロー (非表示または Z-index スタイル) があるが、子コンポーネントがそのコンテナから視覚的に「飛び出す」必要がある場合です。たとえば、ダイアログ ボックス、フローティング カード、プロンプト ボックスなどです。

サスペンス

繰り返しますが、これは React のサスペンスと同じです。

Suspense を使用すると、コンポーネントはレンダリング前に「待機」し、待機中にフォールバック コンテンツを表示できます。

TypeScript サポートの強化

Vue3.x は TypeScript で書き直されており、開発者は Vue3.x を使用するときに TS がコーディングにもたらす利便性を十分に体験できます。

カスタム レンダラー API

この API は、仮想 DOM のレンダリング ルールを定義します。つまり、カスタム API を使用すると、クロスプラットフォームの目的を達成できます。

最後に: Vue3.0 はどのように高速化されるのでしょうか?

  • diff アルゴリズムの最適化

      Vue2 の仮想 dom を完全に比較します
    • Vue3 は静的タグを追加します
  • hoistStatic 静的プロモーション

      Vue2 では、要素が更新に参加するかどうかに関係なく、要素は毎回再作成され、その後レンダリング時に
    • 更新に参加しない要素の Vue3 は静的に昇格され、一度だけ作成され、レンダリング中に直接再利用できます
  • cacheHandlers イベント リスナー キャッシュ

      デフォルトでは、onClick は動的バインディングとみなされ、その変更は毎回追跡されます。ただし、同じ関数であるため、変更の追跡はありません。キャッシュして直接再利用できます。
  • ssr レンダリング

      大量の静的コンテンツがある場合、コンテンツは純粋な文字列としてバッファーにプッシュされます。動的コンテンツがある場合でもバインディングはテンプレート補間によって埋め込まれ、仮想 dom を介してレンダリングするよりもはるかに高速になります。
    • 静的コンテンツが特定のレベルに達すると、クライアントで _createStaticVNode メソッドが使用されます。 . 静的ノードを生成します。これらの静的ノードは直接 innerHtml となるため、オブジェクトを作成し、そのオブジェクトに基づいてレンダリングする必要はありません。
プログラミング関連の知識について詳しくは、

プログラミング ビデオをご覧ください。 !

以上がvue3.0の新機能は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。