精华内容
下载资源
问答
  • 2021年学vue还是react好

    千次阅读 热门讨论 2021-02-04 17:05:50
    对于老一辈程序员来说,肯定想了解下前后端分离,假如你是一个老程序员,或者是一个前端新手,学vue还是react呢? 我会毫不犹豫地告诉你,请选择有中国主场优势的vue。 首选,vue有中国的主场优势,后面的组件...

    对于老一辈程序员来说,肯定想了解下前后端分离,假如你是一个老程序员,或者是一个前端新手,学vue还是学react呢?

    我会毫不犹豫地告诉你,请选择有中国主场优势的vue。

    首选,vue有中国的主场优势,后面的组件肯定也越来越多,比如对小程序的支持、比如对百度地图、对echart的支持、对支付宝接口的支持等等,这方面老外的框架肯定更新没有vue快。所以相对于react来说,vue这方面的优势相当的大,基本上这一优势已经可以决定了我们首选vue了。

    其次,国内的用户基数,当你身边的人都用vue的时候,你再去学react,那么到时你的技术肯定跟不上大部队。比如你同事的项目是用vue写的,要你接手,而你却不会vue,那怎么办?

    然后,就是阅读资料,作为中国人,肯定是看中文资料,比看英文呢资料容易的,所以这个也是vue非常大的一个优势。

    最后,就是社区热度,vue现在还一直在维护,而react,已经有些项目没有维护了,比如react native。现在基于vue的开发框架越来越多,比如uniapp,比如hbuilder、比如apicloud等等。热度非常高。

     

    当然react在技术上还是有它比较多的优势的,这个vue需要不断的学习和不断的完善。

    但是对于我们使用者来说,拥抱vue的大腿就是对的了。

    当然,vue也不能干所有的事,比如对于seo要求高的,还是老老实实的用php、jsp或生成静态技术吧,vue和react单页应该,页面内容全通过js输出,对于seo不友好。

     

    展开全文
  • 面对前端最火的两个框架,学 React 还是 Vue ?这可能是每个前端人都曾纠结过的问题。不过,现在你不用纠结了——因为很多公司都是两个框架都有大量的应用,取决于不同团队的技术选型,特别...

    面对前端最火的两个框架,学 React 还是 Vue ?这可能是每个前端人都曾纠结过的问题。

    不过,现在你不用纠结了——因为很多公司都是两个框架都有大量的应用,取决于不同团队的技术选型,特别是阿里、腾讯、字节这些大厂。如果你只会一个框架,已经不太够用了。

    037ad4534b8268d35ddf317620089137.png

    即使你同时会两个框架,还可能遇到这种情况:公司内大部分业务是用 Vue ,少量的业务在用React,维护的时候不断在两种框架中横跳,切换成本非常高,而且一个业务需求,得写两套代码,费时费力。

    其实,完全可以不用那么费劲。还有另一种解决方式:如果你能让Vue、React架构和风格统一,那你写一次代码就可以,组件也能得到充分的复用。

    如何在Vue和React中使用相同的架构?

    如何做到Vue/React代码最大程度复用?

    这里送给大家一个 0元 公开课《React、Vue架构和风格统一》,主讲老师为前阿里P8全栈架构师,他将通过对Vue/React通用设计模式的讲解以及带大家写同质化Vue/React程序等方式,解决上述两个问题。

    课程目标

    来上课,你将能学到:

    • Vue和React只会一个,如何快速上手另一个?

    • 如何做到Vue和React代码最大程度复用

    • 大厂同时使用Vue和React,如何统一标准保质交付的?

    《React、Vue架构和风格统一》公开课

    9月25日 20:00 开课

    立即扫码

    0元报名

     092772892bf32d59a7f88f6617da1178.png

    还有高质量资料等你拿!

    1. 只要你来上课,都能获得一份《前端函数式爬坡挑战》视频课,扩充知识面。

    2. 上完课后,还能再获得一份视频教程《P8大牛带你了解不同前端的薪资差异》,为跳槽加薪做准备!

    老师介绍

    主讲老师介绍

    aa67e54ca1ffb3b10634f2b0ad069fc9.png

    课程内容预告

    课程精彩内容预告

    ba759799ac8b0562c65207cea1741d17.png

    学习目标

    学习目标

    23378724e87ddeaae40908a1263d2953.png

    《React、Vue架构和风格统一》

    9月25日 20:00 开课

    立即扫码

    0元报名

     3a5337b44bb4998ef8160195690688b0.png

    展开全文
  •              ...2016年React巩固了它作为前端框架之王的地位,这一年中可以看到它在Web端和移动端的快速成长,同时稳稳领先于它

                  在这里插入图片描述                   在这里插入图片描述

    2016年React巩固了它作为前端框架之王的地位,这一年中可以看到它在Web端和移动端的快速成长,同时稳稳领先于它的主要竞争对手Angular。

    但是2016对Vue来说也是同样令人印象深刻的一年,它发布了Vue 2.0版本并且在JavaScript社区引起了巨大反响,GitHub上多出的25000颗star就是最好的证明。

    React和Vue的适用范围无疑是很相似的:同样是基于组件的轻量级框架,同样专注于用户界面的视图层。同样可以用在简单的项目中,也同样可以使用全家桶扩展为复杂的应用程序。

    因为,很多Web开发者想知道他们应该使用哪个框架。是其中一个明显优于另一个?还是他们有各自的优点和坑?或者他们基本就是一个样?

    两个框架 两个拥护者

    在本文中,我想用一次公平,彻底的对比来回答上面的疑问。但是唯一的问题是我是一个Vue粉丝,完全不够客观。今年我在项目中重度使用Vue,在Medium上大加赞赏,甚至还发布了Udemy课程

    为了平衡我的偏见,我叫上了我的朋友Alexis Mangin,他是一个很牛的JavaScript开发者,同时也是一个React铁粉。他同样沉浸于React中,经常在Web端和移动端的项目中使用。

    有一天Alexis问我:“为什么你这么中意Vue,而不是React呢?”那时候我不太了解React, 没办法给出一个好的答案。所以我出了一个主意,找一天时间,带上笔记本电脑,互相介绍一下彼此做出选择的原因。

    经过大量的讨论和和互相学习后,我们找到了6个关键点。

    如果你喜欢用模板搭建应用(或者有这个想法),请选择Vue

    Vue应用的默认选项是把markup放在HTML文件中。数据绑定表达式采用的是和Angular相似的mustache语法,而指令(特殊的HTML属性)用来向模板添加功能。

    下面的示例是一个简单的Vue应用。它会展示message和一个用来reverse message的按钮:

    // HTML 
    
    <div id="app"> 
    
     <p>{{ message }}</p> 
    
     <button v-on:click="reverseMessage">Reverse Message</button> 
    
    </div> 
    
    // JS 
    
    new Vue({ 
    
     el: '#app', 
    
     data: { 
    
     message: 'Hello Vue.js!' 
    
     }, 
    
     methods: { 
    
     reverseMessage: function () { 
    
     this.message = this.message.split('').reverse().join(''); 
    
     } 
    
     } 
    
    }); 
    

    相比之下,React应用不使用模板,它要求开发者借助JSX在JavaScript中创建DOM。下面是用React实现的同样的应用:

    // HTML 
    
    <div id="app"></div> 
    
    // JS (pre-transpilation) 
    
    class App extends React.Component { 
    
     constructor(props) { 
    
     super(props); 
    
     this.state = { 
    
     message: 'Hello React.js!' 
    
     }; 
    
     } 
    
     reverseMessage() { 
    
     this.setState({  
    
     message: this.state.message.split('').reverse().join('')  
    
     }); 
    
     } 
    
     render() { 
    
     return ( 
    
     <div> 
    
     <p>{this.state.message}</p> 
    
     <button onClick={() => this.reverseMessage()}> 
    
     Reverse Message 
    
     </button> 
    
     </div> 
    
     ) 
    
     } 
    
    } 
    ReactDOM.render(App, document.getElementById('app')); 
    

    对于来自标准Web开发方式的新开发者,模板更容易理解。但是一些资深开发者也喜欢模板,因为模板可以更好的把布局和功能分割开来,还可以使用Pug之类的模板引擎。

    但是使用模板的代价是不得不学习所有的HTML扩展语法,而渲染函数只需要会标准的HTML和JavaScript。而且比起模板,渲染函数更加容易调试和测试。当然你不应该因为这方面的原因错过Vue,因为在Vue2.0中提供了使用模板或者渲染函数的选项。

    如果你喜欢简单和“能用就行”的东西,请选择Vue

    一个简单的Vue项目可以不需要转译直接运行在浏览器中,所以使用Vue可以像使用jQuery一样简单。当然这对于React来说在技术上也是可行的,但是典型的React代码是重度依赖于JSX和诸如class之类的ES6特性的。

    Vue的简单在程序设计的时候体现更深,让我们来比较一下两个框架是怎样处理应用数据的(也就是state)。

    React中的state是不可变(immutable)的,所以不能直接改变,需要使用API中的setState方法:

    this.setState({  
     message: this.state.message.split('').reverse().join('')  
    }); 
    

    React中是通过比较当前state和前一个state来决定何时在DOM中进行重渲染以及渲染的内容,因此需要不可变(immutable)的state。

    Vue中的数据是可变(mutated)的,所以同样的操作看起来更加简洁。

    // Note that data properties are available as properties of  
    // the Vue instance 
    this.message = this.message.split('').reverse().join(''); 
    

    让我们来看看Vue中是如何进行状态管理的。当向state添加一个新对象的时候,Vue将遍历其中的所有属性并且转换为getter,setter方法,现在Vue的响应系统开始保持对state的跟踪了,当state中的内容发生变化的时候就会自动重新渲染DOM。令人称道的是,Vue中改变state的状态的操作不仅更加简洁,而且它的重新渲染系统也比React 的更快更有效率。

    Vue的响应系统还有有些坑的,例如:它不能检测属性的添加和删除和某些数组更改。这时候就要用到Vue API中的类似于React的set方法来解决。

    如果你想要你的应用尽可能的小和快,请选择Vue

    当应用程序的状态改变时,React和Vue都将构建一个虚拟DOM并同步到真实DOM中。两者都有各自的方法优化这个过程。

    Vue核心开发者提供了一个benchmark测试,可以看出Vue的渲染系统比React的更快。测试方法是10000个项目的列表渲染100次,结果如下图。

    从实用的观点来看,这种benchmark只和边缘情况有关,大部分应用程序中不会经常进行这种操作,所以这不应该被视为一个重要的比较点。但是,页面大小是与所有项目有关的,这方面Vue再次领先,它目前的版本压缩后只有25.6KB。React要实现同样的功能,你需要React DOM(37.4KB)和React with Addon库(11.4KB),共计44.8KB,几乎是Vue的两倍大。双倍的体积并不能带来双倍的功能。

    如果你打算构建一个大型应用程序,请选择React

    像文章开头那种同时用Vue和React实现的简单应用程序,可能会让一个开发者潜意识中更加倾向于Vue。这是因为基于模板的应用程序第一眼看上去更加好理解,而且能很快跑起来。但是这些好处引入的技术债会阻碍应用扩展到更大的规模。模板容易出现很难注意到的运行时错误,同时也很难去测试,重构和分解。

    相比之下,Javascript模板可以组织成具有很好的分解性和干(DRY)代码的组件,干代码的可重用性和可测试性更好。Vue也有组件系统和渲染函数,但是React的渲染系统可配置性更强,还有诸如浅(shallow)渲染的特性,和React的测试工具结合起来使用,使代码的可测试性和可维护性更好。

    与此同时,React的immutable应用状态可能写起来不够简洁,但它在大型应用中意义非凡,因为透明度和可测试性在大型项目中变得至关重要。

    如果你想要一个同时适用于Web端和原生APP的框架,请选择React

    React Native是一个使用Javascript构建移动端原生应用程序(iOS,Android)的库。它与React.js相同,只是不使用Web组件,而是使用原生组件。如果你学过React.js,很快就能上手React Native,反之亦然。

    // JS 
    import React, { Component } from 'react';  
    import { AppRegistry, Text, View } from 'react-native';  
    class HelloWorld extends Component {  
     render() {  
     return (  
     <View>  
     <Text>Hello, React Native!</Text> 
     </View> 
     );  
     } 
    } 
    AppRegistry.registerComponent('HelloWorld', () => HelloWorld); 
    

    它的意义在于,开发者只需要一套知识和工具就能开发Web应用和移动端原生应用。如果你想同时做Web端开发和移动端开发,React为你准备了一份大礼。

    阿里的Weex也是一个跨平台UI项目,目前它以Vue为灵感,使用了许多相同的语法,同时计划在未来完全集成Vue,然而集成的时间和细节还不清楚。因为Vue将HTML模板作为它设计的核心部分,并且现有特性不支持自定义渲染,因此很难看出目前的Vue.js的跨平台能力能像React和React Native一样强大。

    如果你想要最大的生态系统,请选择React

    毫无疑问,React是目前最受欢迎的前端框架。它在NPM上每个月的下载量超过了250万次,相比之下,Vue是22.5万次。

    人气不仅仅是一个肤浅的数字,这意味着更多的文章,教程和更多Stack Overflow的解答,还意味有着更多的工具和插件可以在项目中使用,让开发者不再孤立无援。

    这两个框架都是开源的,但是React诞生于Facebook,有Facebook背书,它的开发者和Facebook都承诺会持续维护React。相比之下,Vue是独立开发者尤雨溪的作品。尤雨溪目前在全职维护Vue,也有一些公司资助Vue,但是规模和Facebook和Google没得比。不过请对Vue的团队放心,它的小规模和独立性并没有成为劣势,Vue有着固定的发布周期,甚至更令人称道的是,Github上Vue只有54个open issue,3456个closed issue,作为对比,React有多达530个open issue,3447个closed issue。

    如果你已经用其中一个用的很爽,就别变了。

    总结一下,我们发现的,Vue的优势是:

    模板和渲染函数的弹性选择简单的语法和项目配置更快的渲染速度和更小的体积
    React的优势是:

    更适合大型应用和更好的可测试性Web端和移动端原生APP通吃更大的生态系统,更多的支持和好用的工具。
    然而,React和Vue都是很优秀的框架,它们之间的相似之处多过不同之处,并且大部分的优秀功能是相通的:

    用虚拟DOM实现快速渲染轻量级响应式组件服务端渲染集成路由工具,打包工具,状态管理工具的难度低优秀的支持和社区。

    展开全文
  • 如果需要效率和稳定,建议选 React一年后的话,选 vue 还是 react 没有半点差别,基本可以视为一个框架后台重复逻辑太多,react 配合 ahooks + antd,能做到3,5分钟完成一个页面,逻辑都被别人封装了,测试点被...

    当前时间节点,在 vue 和 react 两个选项上,如果需要效率和稳定,建议选 React

    一年后的话,选 vue 还是 react 没有半点差别,基本可以视为一个框架

    后台重复逻辑太多,react 配合 ahooks + antd,能做到3,5分钟完成一个页面,逻辑都被别人封装好了,测试点被安排'的明明白白,你只需要写每个表格项的样式,添加一些额外的表单组件。

    请求逻辑,表单逻辑,分页逻辑,都不用你写

    vue 当前版本,没有高效的逻辑复用,没有第三方逻辑api,因此,你可能需要花 3-5 倍的工作量去完成相同的工作,代码提示,可测试性等等,都要差很多

    但是新版本 vue 就完全不一样了,比 react 更方便(当然,牺牲了纯函数的函数式体验),api 面积差不多,但用起来更简单,写法上也没复杂多少,你也可以选择 jsx 或者 template

    但是,到这个时候,vue 和 react 的差异会小到忽略不计的程度,比如如下代码,你能知道哪个是 React 哪个是 Vue 么?

    const SomeComponent = ()=>{

    const [value,setValue] = useState('test')

    return (

    { value }
    )

    }

    const SomeComponent = ()=>{

    const test = ref('test')

    return ()=> (

    { test.value }
    )

    }

    上面那个是 React , 下面那个是 Vue 的 vca 写法,当然,如果你喜欢 template,可以这么写:

    { value }

    export default {

    setup(){

    const value = ref('test')

    return {

    value

    }

    }

    }

    不过呢,三行代码的事情被搞了那么多多余动作才说清楚,是不是有些得不偿失?

    最后的结果就是,到那个时候,比较 vue 和 react 的文章,可能都没什么人讨论了,选择没有意义

    展开全文
  • 面试官:谈谈VueReact的区别?

    千次阅读 多人点赞 2021-03-29 14:49:39
    在我之前写的localStorage与Vuex的区别 这篇文章中讲过关于这个类型的题目,其中分析过描述区别,就是求同存异的过程。那接下来我用同样的思路来解这道题目。首先找到 Vue 和 ...
  • VueReact的区别

    2021-04-07 11:45:15
    首先找到 VueReact 的共性,它们被用于解决什么问题, 然后再挖掘各自独特的个性、设计原理以及未来的趋势等。 vuereact区别 共同点 VueReact存在着很多的共同点: 数据驱动视图 组件化 ...
  • 近几年 ,前端领域出现了两大玩家:Google 发布的 Angular、Facebook 开发的 JavaScript 库 React。...VueReact 和 Angular 简史 Angular Google 的一名员工 Misko Hevery 当时正在做一个副业项目,旨在简化
  • 中大型项目用react还是vue?中大型项目可以用reactreact比较适合大型项目。原因:1、大型项目的庞大带来的是代码优化以及性能优化react提倡的更细粒度的封装,带来的组件的复用性提高。更高自由度的编写(几乎无api...
  • 浅谈vuereact的框架的比较浅谈vuereact的框架的比较数据绑定组件化和数据流数据状态管理渲染和更新问与答 浅谈vuereact的框架的比较 从四个大方面进行浅谈比较:数据绑定、组件化和数据流、数据状态管理、渲染...
  • 最近在学习 React ,发现一些和 Vue 比起来很有趣的区别: 1:更新数据变量 在 Vue 中: // 变量绑定到元素上: <div ref="div">{{value}}</div> // 定义变量: data() { return { value: 0 } }, ...
  • 一、VueReact设计思路 1、vue 1.1 vue1.x 只有响应式通知。 1.2 vue2.x 在vue1.x中如果项目很大的时候,响应式对象很多的时候就会导致性能很,页面卡顿的情况,所以在vue2.x的时候引入了vdom。响应式和vdom...
  • vuereact的区别 他们的功能相似(组件化开发),但是设计思想是不同的,以下列举了四点不同 数据双向绑定 react函数式思想,数据不可变,单向数据流(结合redux-form可以实现双向) vue响应式思想,支持双向绑定...
  • vuereact 的生命周期

    2021-03-07 22:24:36
    一、vue的生命周期: created, mounted, updated, destroyed, 以及各自的before钩子。 参考vue 生命周期图示 new Vue({ name: 'demo', el: '#demo', beforeCreate() { //在实例初始化之后,数据观测 ...
  • 到课就送《Vue组件库源码解析》 完课还送《Vue 快速迁移指南》 ◆ 第二天:VueReact 全家桶生态大PK 从实战角度对比 VueReact 解决方案,掌握技术选型的思路,为将来你独立带项目或者做架构师做准备;...
  • 其实不管是vue还是react,其路由懒加载的实现得益于wepack的异步模块打包,其原理就是利用es6 import()函数。这个import不是import命令。同样是引入模块,import命令是同步引入模块,而import()函数动态引入。当 ...
  • VueReact中diff算法区别 vuereact的diff算法,都是忽略跨级比较,只做同级比较。vue diff时调动patch函数,参数是vnode和oldVnode,分别代表新旧节点。 1.vue对比节点。当节点元素相同,但是classname不同,认为...
  • PS:本文适合熟悉vue以及了解react的同学 由于公司业务使用得是react开发的...实际上vue熟练的同学们,我觉得转react还是比较上手的,就是要适应他的纯js的写法以及jsx等,个人认为还是比较接受的,其实基本上都一.
  • 相关推荐:《React视频教程》、《vue.js教程》 vuereact渲染的区别 1、模板渲染方式的不同 在表层上,模板的语法不同,React是通过JSX渲染模板。而Vue是通过一种拓展的HTML语法进行渲染,但其实这只是表面现象,...
  • VueReact比较

    2021-06-17 03:02:03
    之前用到代学解维请总断以泉实时近码会,护求结的我了Vue进行开发,后来用了React,然后总是被问到为什么用React?总是说得有点模棱两可,下面总结了一下,希望得到补件用刚它编互工不维直构曾里经屏明名以屏机公会到...
  • vue flutter react三者介绍

    千次阅读 2021-01-23 22:56:05
    flutter Flutter 是 Google 开源的 UI 工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动、Web、桌面和嵌入式平台。...Flutter 组件采用现代响应式框架构建,这是从React中获得的灵感,中
  • [vue] vuereact有什么不同?使用场景分别是什么?

    千次阅读 多人点赞 2021-02-28 18:52:17
    [vue] vuereact有什么不同?使用场景分别是什么? 1、vue是完整一套由官方维护的框架,核心库主要有由尤雨溪大神独自维护,而react是不要脸的书维护(很多库由社区维护),曾经一段时间很多人质疑vue的后续维护性...
  • 2021 Vue.js 面试题汇总及答案 - Jack Niu - 博客园
  • VueReact存在着较大的区别,例在添加、删除和更改数据,以 prop 形式从父组件到子组件传递数据,以及通过事件监听器的形式将数据从子组件发送到父组件的实现方法中都存在较大差异对于VueReact框架想必大家都...
  • 作为前端最火的两个框架,ReactVue 几乎是面试必考的内容。特别是到了中高级前端岗,企业不仅要考察你对两个框架的应用,还会从源码层面考察你对框架的掌握程度,比如:Computed...
  • vuereact火的原因分析

    千次阅读 2021-02-04 16:44:51
    其实从技术上来说vue对比react来说并没有什么优势,毕竟react是facebook的出品,代码的质量肯定是没问题...2、教程的可阅读性:react的教程再,大部分都是英文的,然后也有中文站,但是相对于vue来说,学习起来还是
  • VueReact的对比

    2021-03-11 11:38:59
    今晚我们来搞一搞VueReact的对比吧,话不多说今天我们直接开搞可好,各位小老板,开始吧1.react整体是函数式的思想,把组件设计成纯组件,状态和逻辑通过参数传入, 所以在react中,是单向数据流,推崇结合...
  • React中的事件传参 <button onClick = { this.fn.bind(this, ‘a’, ‘b’ ) }&...vue中的事件传参 <button onClick = { fn(‘a’, ‘b’ ) }></ button> fn ( a,b,event ) { } React中的受控组件 ...
  • 2. VueReact的相似之处 3. VueReact的区别 1. 前端框架是什么? 前端框架一般指用于简化网页设计的框架,使用广泛的前端开发套件;例如VueReact,Angular等; (1)Vue (读音 /vjuː/,类似于view) 是...
  • 大家,我是若川。面对前端最火的两个框架,学 React 还是 Vue ?这可能是每个前端人都曾纠结过的问题。不过,现在你不用纠结了——因为很多公司都是两个框架都有大量的应用,取决于不同团...
  • VueReact 源码大PK

    2021-04-13 00:21:46
    作为前端最火的两个框架,ReactVue 几乎是面试必考的内容。特别是到了中高级前端岗,企业不仅要考察你对两个框架的应用,还会从源码层面考察你对框架的掌握程度,比如:Computed...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 88,803
精华内容 35,521
关键字:

vue还是react好

vue 订阅