-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2 changed files
with
103 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
--- | ||
title: React和Vue 前端框架的对比 | ||
date: 2024-09-18 05:16:22 | ||
permalink: /pages/261394/ | ||
categories: | ||
- 前端 | ||
tags: | ||
- React | ||
- Vue | ||
--- | ||
|
||
# React和Vue前端框架的对比 | ||
|
||
![](https://github.com/lvxuan149/picx-images-hosting/raw/master/1111.3nrkuh2lfb.webp) | ||
|
||
## 背景 | ||
|
||
@崔棉大师在团队管理手册写道:——前端由项目组决定选择Vue或React开发框架。 | ||
|
||
React和Vue都是很优秀的前端框架,而且在各大 IT 社区每年的统计和调查中都会被赋予最流行、最受欢迎、最常用的 Web 框架的称号。 | ||
|
||
React和Vue各有优缺点。说其中一种工具优于另一种工具并不完全正确。因此开发之前比较两个框架以确定哪个更适合项目。 | ||
|
||
|
||
## 简介 | ||
|
||
### Vue 简介 | ||
|
||
2014 年由独立开发者 EvanYou 开源,他是前 Google 员工,他想创造一个框架,将 Angular、Ember 和 React 等最受欢迎的框架中的最佳实践结合起来,让编写 Web 应用更快、更容易、更轻松。现在 Vue 由 Vue.js Core Team 开发维护。 | ||
|
||
Vue 的简单性和平缓的学习曲线促成了它的流行,使其成为初学者和经验丰富的开发人员的有吸引力的选择。 Vue 被阿里巴巴、小米、百度、小米和 Adobe 等公司使用。多年来,Vue 生态系统也在不断扩展,为开发人员提供了各种插件、组件和工具。 | ||
|
||
### React 简介 | ||
|
||
2013 年由 Facebook 开源,并由这家公司维护。之前曾有段时间大家对 React 的开源许可证存在质疑,但是目前它在 MIT 许可证下运行。React 有企业的支持,在未来有着更强的稳定性。 | ||
|
||
React 被许多流行的网站和公司使用,包括 Facebook、Instagram、Airbnb、Netflix、WhatsApp 等等。同时React 周围的生态系统非常广泛,为开发人员提供了大量的开源库、工具和资源。 | ||
|
||
## 概念 | ||
|
||
|
||
|
||
|
||
## 异同 | ||
|
||
### 相似之处 | ||
|
||
- 虚拟 DOM:两者都有虚拟 DOM,都只会更新那些已经修改的对象,这样可以节省 DOM 操作的时间和资源。 | ||
- 基于组件的开发模式:两者都有大量的组件库,可以提高代码的重用和开发过程的效率。 | ||
- 专注于视图:两者都只关心渲染视图,像路由、状态管理等独立的部分都由其他库去完成。 | ||
JavaScript: | ||
- 两者都依赖 JavaScript。 | ||
|
||
|
||
### 不同之处 | ||
|
||
- 语法:两者的差异主要是语法。默认情况下,Vue 使用 SFC,React 使用 JSX。在 React 中只有 JSX,而 Vue 中将 HTML、CSS 和 JS 分离了。 | ||
- 学习所以很多初级前端开发者可以很好的学习 Vue,而学习 React 需要对 JavaScript 相对有一定要求。这也是更多新手前端开发者和初级前端开发者更热爱 Vue 的一个原因。 | ||
|
||
## 前端框架对比 | ||
|
||
|
||
接下来说说React和Vue的两个重磅框架 | ||
|
||
- Next.js | ||
- Nuxt.js。 | ||
|
||
|
||
### Next.js | ||
|
||
- 服务端渲染:支持SSR和SSG两种方式,有更好的SEO,首屏渲染性能。 | ||
- 基于文件的路由:简单灵活,可以实现页面之间的无缝跳转和传递参数,使用户在浏览网站时体验流畅且一致。 | ||
- 全栈能力:在Next.js框架下,同样可以定义API,可以说Next.js是一个全栈框架。 | ||
|
||
服务端组件:额外要说的是Next 13推出的服务端组件,让服务端渲染从页面级细化到组件级别,真是太厉害了。另外函数式组件再次在Next.js中发挥威力,在服务端是不支持类组件的。 | ||
|
||
### Nuxt.js | ||
|
||
可以说是Next.js的Vue版本,主要特性是类似的,服务端渲染,基于文件的路由,还有全栈能力,不过Nuxt目前还不支持服务端组件。 | ||
|
||
|
||
## 项目匹配 | ||
|
||
在实际的开发场景中,React、Vue 等现代框架是比原生 JavaScript 更好的选择,框架可以让我们更高效的进行应用开发。 | ||
|
||
**React是最求简洁和函数式的**:这两点也确实在跨平台方案和大型框架如Next.js中发挥了威力。还有一个重要的影响点就是,给项目中的React升级是容易的,也得益于React对自身暴露API的谨慎。 | ||
|
||
**Vue追求易用和上手**:但在跨平台方案和大型框架落了下风。但如果是开发Web应用,Vue同样是值得选择的好技术栈。暂时总结到这里,后续再学习,有新的心得再补充进来。 | ||
|
||
|
||
|
||
|
||
|
||
### |