cari
Rumahhujung hadapan webtutorial jsAngular、Vue、React三大框架鼎力2018

Angular、Vue、React三大框架鼎力2018

Sep 07, 2018 pm 05:48 PM
angular.jsreact.jsvue.js

2018年前端炒的火热的莫非于三大框架,angular、vue、react,谈谈我对这三大框架的理解,接下来一起看下去吧。

期初在前三四年或者更早,前端还没被完全分离出来,原生js开发前端页面,似乎并不优雅,好比我们盖房子,一块砖一块砖的盖,很耗时,也不方便维护,渐渐地jQuery库的产生,提高了开发人员的效率,减少了浏览器的兼容,一时间很多涨粉,到现在一些旧的项目仍然在使用,but,他没有mvc,mvvm构架,需要自己进行配置。

后来出现了mvc框架的angular,这个效率比较低,只要发生变化,就得重新遍历计算;

然后出现了react,react的虚拟dom减少了dom操作,降低了项目成本,提高效率和程序性能,但是react是基于view层的,他需要配合一些其他的框架,如flux,redux等,如果拿react跟vue比较的话,使用起来会相对复杂,比如,不能使用指令,遍历不方便,;

而vue相对react而言,没有react灵活,搭配自如,但是他开发起来很高效,vue的插件,组件,生态系统对于我们一般的项目已经足够了,虽然vue的是个人主导的,react是Facebook团队维护的,社区比较繁荣,但vue适合很多项目,也正在慢慢的扩大,前景也是很不错的。

Angular

作为元老级的Angular,前后经angular1、angular2、angular4,每个版本似乎都是一个新的框架。

angular1中的ng-if和vue的v-if很相像,因为vue的指令系统就是从angular1中获取的灵感,而且angular1中 的很多问题在vue中得以解决;

到了angular2,他比起1来说,是一个全新的框架,比如说,有更优秀的组件系统,api也变了很多等等,虽然改进了很多,但还是很臃肿;

相比于angular2,angular4的功能列表中添加了许多新功能,同时还有一些旧功能的改进,使用angular4程序将会消耗更少的空间,比起以前的版本运行的更快。

  • 使用场景

当项目对性能要求不高的时候,可以使用angular,或者一些曾经一直用的angular1的项目有必要升级一下了,而且哪有不要求性能的项目,所以angular对于一些新型项目慎重考虑...(想看更多就到PHP中文网AngularJS开发手册中学习)

React

官方说react是因为Facebook对市场上的mvc框架都不满意,自己写了一套用来架构Instagram网站,因为好用,2013年5月开源的,到先在2017年底,react已经升级到了16.2,路由react-router3升为react-router4,react-router-dom

  • 虚拟dom

react不得不提的是虚拟DOM(Virtual DOM),当页面初次加载的时候会产生一颗dom树,内存中会产生一颗render树,当数据发生更改的时候,会将更改的内容和存有的render树进行对比,找出最优的算法,然后更改render树,最后重新生成页面的dom树,有了虚拟dom,前端的性能提高了很多。

  • 组件化

react的组件化思想尤为体现,将view层分成各个独立的组件,降低耦合度,组件化使得组件间可组合,可重用,可维护,从而大大提高开发效率

  • 灵活性

react是基于view层的,要想发挥他的作用,必须配合一些插件,例如flux,redux等,当然,可以配合更多的库来达到更好的效果

  • 使用场景

react的使用基本上是大型项目的首选,组件化和灵活性是大型项目的条件,其次,react native可以让react运行在移动设备上。

Vue

Vue是2014年2月开源的,尤大牛主导的vue编写,到目前为止升级到了v2.5,vue的全家桶Vue-router,Vuex,服务端渲染,以及vue的虚拟dom,组件化,性能,不差于react,对于没有Angular 和react经验的团队,并且规模不是很大的前端项目来说,vue是一个很好的选择

总结

框架的选型不仅要看项目本身,还要综合公司团队,团队的技术栈可能直接导致项目框架的选型

好了,本篇文章到这就结束了(想看更多就到PHP中文网AngularJS使用手册中学习),有问题的可以在下方留言提问。


Atas ialah kandungan terperinci Angular、Vue、React三大框架鼎力2018. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
JavaScript dan Web: Fungsi teras dan kes penggunaanJavaScript dan Web: Fungsi teras dan kes penggunaanApr 18, 2025 am 12:19 AM

Penggunaan utama JavaScript dalam pembangunan web termasuk interaksi klien, pengesahan bentuk dan komunikasi tak segerak. 1) kemas kini kandungan dinamik dan interaksi pengguna melalui operasi DOM; 2) pengesahan pelanggan dijalankan sebelum pengguna mengemukakan data untuk meningkatkan pengalaman pengguna; 3) Komunikasi yang tidak bersesuaian dengan pelayan dicapai melalui teknologi Ajax.

Memahami Enjin JavaScript: Butiran PelaksanaanMemahami Enjin JavaScript: Butiran PelaksanaanApr 17, 2025 am 12:05 AM

Memahami bagaimana enjin JavaScript berfungsi secara dalaman adalah penting kepada pemaju kerana ia membantu menulis kod yang lebih cekap dan memahami kesesakan prestasi dan strategi pengoptimuman. 1) aliran kerja enjin termasuk tiga peringkat: parsing, penyusun dan pelaksanaan; 2) Semasa proses pelaksanaan, enjin akan melakukan pengoptimuman dinamik, seperti cache dalam talian dan kelas tersembunyi; 3) Amalan terbaik termasuk mengelakkan pembolehubah global, mengoptimumkan gelung, menggunakan const dan membiarkan, dan mengelakkan penggunaan penutupan yang berlebihan.

Python vs JavaScript: Keluk Pembelajaran dan Kemudahan PenggunaanPython vs JavaScript: Keluk Pembelajaran dan Kemudahan PenggunaanApr 16, 2025 am 12:12 AM

Python lebih sesuai untuk pemula, dengan lengkung pembelajaran yang lancar dan sintaks ringkas; JavaScript sesuai untuk pembangunan front-end, dengan lengkung pembelajaran yang curam dan sintaks yang fleksibel. 1. Sintaks Python adalah intuitif dan sesuai untuk sains data dan pembangunan back-end. 2. JavaScript adalah fleksibel dan digunakan secara meluas dalam pengaturcaraan depan dan pelayan.

Python vs JavaScript: Komuniti, Perpustakaan, dan SumberPython vs JavaScript: Komuniti, Perpustakaan, dan SumberApr 15, 2025 am 12:16 AM

Python dan JavaScript mempunyai kelebihan dan kekurangan mereka sendiri dari segi komuniti, perpustakaan dan sumber. 1) Komuniti Python mesra dan sesuai untuk pemula, tetapi sumber pembangunan depan tidak kaya dengan JavaScript. 2) Python berkuasa dalam bidang sains data dan perpustakaan pembelajaran mesin, sementara JavaScript lebih baik dalam perpustakaan pembangunan dan kerangka pembangunan depan. 3) Kedua -duanya mempunyai sumber pembelajaran yang kaya, tetapi Python sesuai untuk memulakan dengan dokumen rasmi, sementara JavaScript lebih baik dengan MDNWebDocs. Pilihan harus berdasarkan keperluan projek dan kepentingan peribadi.

Dari C/C ke JavaScript: Bagaimana semuanya berfungsiDari C/C ke JavaScript: Bagaimana semuanya berfungsiApr 14, 2025 am 12:05 AM

Peralihan dari C/C ke JavaScript memerlukan menyesuaikan diri dengan menaip dinamik, pengumpulan sampah dan pengaturcaraan asynchronous. 1) C/C adalah bahasa yang ditaip secara statik yang memerlukan pengurusan memori manual, manakala JavaScript ditaip secara dinamik dan pengumpulan sampah diproses secara automatik. 2) C/C perlu dikumpulkan ke dalam kod mesin, manakala JavaScript adalah bahasa yang ditafsirkan. 3) JavaScript memperkenalkan konsep seperti penutupan, rantaian prototaip dan janji, yang meningkatkan keupayaan pengaturcaraan fleksibiliti dan asynchronous.

Enjin JavaScript: Membandingkan PelaksanaanEnjin JavaScript: Membandingkan PelaksanaanApr 13, 2025 am 12:05 AM

Enjin JavaScript yang berbeza mempunyai kesan yang berbeza apabila menguraikan dan melaksanakan kod JavaScript, kerana prinsip pelaksanaan dan strategi pengoptimuman setiap enjin berbeza. 1. Analisis leksikal: Menukar kod sumber ke dalam unit leksikal. 2. Analisis Tatabahasa: Menjana pokok sintaks abstrak. 3. Pengoptimuman dan Penyusunan: Menjana kod mesin melalui pengkompil JIT. 4. Jalankan: Jalankan kod mesin. Enjin V8 mengoptimumkan melalui kompilasi segera dan kelas tersembunyi, Spidermonkey menggunakan sistem kesimpulan jenis, menghasilkan prestasi prestasi yang berbeza pada kod yang sama.

Beyond the Browser: JavaScript di dunia nyataBeyond the Browser: JavaScript di dunia nyataApr 12, 2025 am 12:06 AM

Aplikasi JavaScript di dunia nyata termasuk pengaturcaraan sisi pelayan, pembangunan aplikasi mudah alih dan Internet of Things Control: 1. Pengaturcaraan sisi pelayan direalisasikan melalui node.js, sesuai untuk pemprosesan permintaan serentak yang tinggi. 2. Pembangunan aplikasi mudah alih dijalankan melalui reaktnatif dan menyokong penggunaan silang platform. 3. Digunakan untuk kawalan peranti IoT melalui Perpustakaan Johnny-Five, sesuai untuk interaksi perkakasan.

Membina aplikasi SaaS Multi-penyewa dengan Next.js (Integrasi Backend)Membina aplikasi SaaS Multi-penyewa dengan Next.js (Integrasi Backend)Apr 11, 2025 am 08:23 AM

Saya membina aplikasi SaaS multi-penyewa berfungsi (aplikasi edTech) dengan alat teknologi harian anda dan anda boleh melakukan perkara yang sama. Pertama, apakah aplikasi SaaS multi-penyewa? Aplikasi SaaS Multi-penyewa membolehkan anda melayani beberapa pelanggan dari Sing

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
Akan R.E.P.O. Ada Crossplay?
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

EditPlus versi Cina retak

EditPlus versi Cina retak

Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Persekitaran pembangunan bersepadu PHP yang berkuasa