前端框架:react还是vue?
之前写了一篇前端框架的大汇总,主要介绍了当下主流的框架和其特性。最近除了bootstrap,就属react和vue最为热门,这篇就主要拿这两个框架来做一下详细对比。
究竟如何正确使用?作为小白的我们从何学起比较好?带着一系列问题来看看吧。
这篇主要介绍:
1、从出身背景、优势、缺点、适合场景、开发模式、实践情况进行对比
2、相似之处
3、如何选择?
从出身背景、优势、缺点、适合场景、开发模式、实践情况进行对比
1、出身背景:
react是facebook团队开发,2013.3月发布。目前版本15.5.4(初始版本是13开头),社区较成熟,拥有更大的生态圈
vue是Evan You个人开发,2014年2月发布 vue2.0版本,生态圈较小
2、优势:
react官网推荐的三个特点如下:
- 状态机 —轻松创建交互界面
- 基于组件 —封装组件,管理状态
- 学习一次,到处使用 —跨平台
- 更大的规模、更多的使用者、更好的可测试性
- Web和原生APP
- 能提供更多支持和工具的更大的生态系统
vue 官网推荐的三个特点
- 易用 —会html、css、js即刻开始使用
- 灵活 —渐进式技术栈
- 性能 —17kb (min+gzip),渲染速度更快,体积更小
- 模板或渲染的灵活选项
- 语法以及项目设置的简单
3、缺点:
react:
- 需要转换开发模式(函数式编程)
- 学习新的概念和语法(jsx、es5/6等)
- 需要其他类库支持 (redux)
vue:
- 个人维护框架,风险可能会更大
- 社区不成熟,部分依赖开发人员更新
- 资源较少
4、适合场景
react:
- 大型复杂应用程序
- 同时适用于web端和原生APP
- 周期长,不断迭代的需求
vue:
- 模板搭建开发模式
- 周期短、小型应用程序
5、开发模式
react:
- 函数式编程(JSX)
- setState状态管理
vue:
- 模板式开发
- 属性对象
6、实践情况
react:
- 国外公司:Facebook、Netflix、Airbnb
- 国内公司:蚂蚁金服、阿里、口碑、美团、滴滴
vue:
- 主要是饿了么
相似之处
React和Vue都是优秀的UI库,并且具有更多的相似之处。它们都有的优势是:
- 使用虚拟DOM快速渲染
- 轻量级
- 响应式组件
- 服务端渲染
- 轻松集成的的路由、捆绑和状态管理
- 强大的支持和社区
如何选择?
如果是以下需求选react
1、如果想组件式开发
2、如果想web和wap统一技术栈
3、如果想要代码更可维护和可测试性
4、如果你想要最大的生态系统,想利用丰富的组件库及第三方包
5、如果你想要构建大型应用程序
如果是以下需求选vue
1、如果你喜欢使用模板( 或需要一些其中的选项)构建应用程序
2、如果是在现有代码基础上快速升级
3、如果你喜欢简单的能正常工作的,想更加灵活性
4、如果你希望你的程序更小更快,想要更快的渲染速度和体积
最后
作为刚入门的小白, 可以先学Vue,然后再在vue的基础上学习React。所以下次就说说Vue吧~
前端框架:react还是vue?的更多相关文章
- 2015年最热门前端框架React 入门实例教程
现在最热门的前端框架,毫无疑问是 React . 上周,基于 React 的 React Native 发布,结果一天之内,就获得了 5000 颗星,受瞩目程度可见一斑. React 起源于 Face ...
- 前端框架对比之vue与regular(一)
每次一写到Regular总是忍不住先介绍一下,Regualr是网易杭州研究所的一位叫郑海波的大神写的一款前端框架,目前 这款框架推广的不深,加上其和angular过于相似的框架名,导致接受力并不大,其 ...
- 前端框架React Js入门教程【精】
现在最热门的前端框架有AngularJS.React.Bootstrap等.自从接触了ReactJS,ReactJs的虚拟DOM(Virtual DOM)和组件化的开发深深的吸引了我,下面来跟我一起领 ...
- 主流前端框架对比:Vue.js , React, Angular.js
个人认为Vue.js的文档最恳切.我认为结合文档和遇到问题Google答案的匹配度来讲:Vue.js > ReactJS > AngularJS > Angular 2 如何使用Vu ...
- 高性能前端框架React详解
前 言 React 是一个用于构建[用户界面]的 JAVASCRIPT 库. React主要用于构建UI,很多人认为 React 是 MVC 中的 V(视图). React 起源于 Facebo ...
- 前端框架开始学习Vue(三)
初步安装.与搭建 https://www.cnblogs.com/yanxulan/p/8978732.html ----如何搭建一个vue项目 安装 nodejs,,, npm i == np ...
- 前端框架react研究
摘要: 最近公司要做一个嵌套在app中的应用,考虑着用Facebook的react来开发view,所以就研究了下.下面是我在开发中遇到的坑,希望能给你帮助. 项目地址:https://github.c ...
- 前端框架VUE----学习vue前的准备工作
起步 1.扎实的HTML/CSS/Javascript基本功,这是前置条件. 2.不要用任何的构建项目工具,只用最简单的<script>,把教程里的例子模仿一遍,理解用法.不推荐上来就直接 ...
- 前端框架开始学习Vue(二)
1 根据关键字实现数组的过滤 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...
- 前端框架开始学习Vue(一)
MVVM开发思想图(图片可能会被缩小,请右键另存查看,图片来源于网络) 定义基本Vue代码结构 1 v-text,v-cloak,v-html命令 默认 v-text没有闪烁问题,但是会覆盖元 ...
随机推荐
- 使用Dapper进行参数化查询
在使用Dapper操作Mysql数据库中我介绍了使用dapper进行CURD基本操作,但在示例代码中参数虽然也是通过@开头,但其实不是真正意义的参数化查询,而是拼接sql,这种方式不利于防止sql注入 ...
- vue2+webpack使用1--初识默认展示页面
1 从安装好的展示 vue2+webpack项目开始 2 关键目录及文件 3 关系图 4 类比nodejs项目的理解 // src/main.js import Vue from 'vue' // ...
- Python学习手册 :Python 学习笔记第一天
获取当前目录路径: import os os.getcwd() 在输入python程序时,尽量让不是嵌套结构的语句处于最左侧,要不然系统或许会出现"SyntaxError"错误 获 ...
- 张高兴的 Xamarin.Android 学习笔记:(四)常用控件
示例地址 GitHub : https://github.com/ZhangGaoxing/xamarin-android-demo/tree/master/ControlsDemo
- Java中数组的遍历
(I)标准for循环遍历数组 例如代码片段: int [] nums = new int [] {0,1,2,3,4,5,6,7,8,9}; for(int i=0;i<11;i++){ Sys ...
- 为什么String类是不可变的?
为什么String类是不可变的? String类 什么是不可变对象 当满足以下条件时,对象才是不可变的: 对象创建以后其状态就不能修改. 对象的所有域都是final类型的. 对象是正确创建的(在对象的 ...
- JAVA基础知识总结:八
面向对象语言的三大特性;封装.继承.多态 一.面向对象语言特性之封装 1.什么是封装? 一个类中某些属性,如果不希望外界直接访问,我们可以将这个属性作为私有的,可以给外界暴露出来一个访问的方法 使用封 ...
- Django Web框架入门
一.Django介绍 Django是一个开放源代码的Web应用框架,由Python写成,采用了MVC的框架模式.Django的主要目的是简便.快速的开发数据库驱动的网站.它强调代码复用,多个组件可以很 ...
- C++继承(07)
继承 通过特殊化已有的类来建立新类的过程,叫做“类的派生”,原来的类叫做“基类”,新建立的类则叫做“派生类”.另一方面,从类的成员角度看,派生类自动地将基类的所有成员作为自己的成员,这叫做“继承”.基 ...
- LeetCode 501. Find Mode in Binary Search Tree (找到二叉搜索树的众数)
Given a binary search tree (BST) with duplicates, find all the mode(s) (the most frequently occurred ...