4 ms·
The difference is that Svelte is pre-compiled while Angular will put templates through the renderer while building up the page.
by Wolfr_ 7y ago
The difference is that Svelte is pre-compiled while Angular will put templates through the renderer while building up the page.
- The_rationalist 7y agoWhy does it matter?
- badfrog 7y agoMuch faster initial load.
- The_rationalist 7y agoBenchs?
- paulddraper 7y agoAngular v1 interpreted templates at runtime. Starting in 2015, Angular v2+ uses an optimizing AOT compiler. [1] [1] https://angular.io/guide/aot-compiler https://angular.io/guide/aot-compiler
- IggleSniggle 7y agoAngular has been pre-compiled for years. The AOT compiler has been available since Angular 2, released in 2015. It has also been able to produce stand-alone native web-components since 2018, btw. It's only recently that it started producing multiple packages simultaneously, however (to serve up a package optimized for the client's web platform).
- ricardobeat 7y agoMost modern frameworks can be AOT compiled in that sense - React, Vue, Riot - they load JS code only at runtime, but still use templates (VDOM, strings or another representation) as blueprints to update/manipulate the DOM. AFAIK Angular still uses dirty checking; Angular Ivy, yet to be released, will move to something a little closer (incremental-dom), but still not the same. What Svelte does is precompile the UI update code[1], changing text nodes, attributes, children, targeting DOM nodes directly. Think Prepack[2] vs DOM diffing. [1] https://svelte.dev/repl/hello-world?version=3.16.7 https://svelte.dev/repl/hello-world?version=3.16.7 [2] https://prepack.io/ https://prepack.io/
- paulddraper 7y ago> Think Prepack Angular compiler is certainly an optimizing compiler. > Angular Ivy, yet to be released Ivy became an opt-in feature of the Angular CLI earlier this year with Angular v8. > AFAIK Angular still uses dirty checking Ivy uses "dirty checking" too [1]. AFAIK Ivy and pre-Ivy operate on similar fundamental principals, which is why Ivy is a drop-in replacement. [1] https://indepth.dev/what-every-front-end-developer-should-know-about-change-detection-in-angular-and-react/ https://indepth.dev/what-every-front-end-developer-should-kn...