Angular 2はDOMの更新に使用します。シャドウDOMと仮想DOMのどちらですか?Angular 1?
Angular2はshadow DOM(デフォルト)もvirtual DOMも使用しません。
encapsulation: ViewEncapsulation.Emulated
(デフォルト)スタイルのカプセル化はエミュレートされるだけなので、shadow DOMはありません。
encapsulation: ViewEncapsulation.Native
は、ネイティブでそれをサポートするブラウザでshadow DOMを有効にするか、webcomponents polyfillがロードされるときに再びエミュレートされます。
Shadow DOMも、仮想DOMがそうであるようにパフォーマンスをターゲットにしていませんが、スタイルのカプセル化です。
Angular2はvirtual DOMをまったく使用しません。
Angular2には、モデルの変更を検出し、モデルの変更に応じて変更する必要があるDOMの部分のみを更新する変更検出機能があります。
詳細については、 React.jsの仮想DOMのようにシャドウDOMは高速ですか? も参照してください。
ReactおよびVueはVirtual DOMを使用しており、Angularは直接DOMレンダリングシステムを使用しています。
Angularバージョン1.xで行ったのと同じことですが、最適化されており、驚きがあります:)
画面上にdrれるものがないため、DOMよりもJavaScriptオブジェクトを使用する方がはるかに高速です。