• react和vue的区别?


        • 数据是否可变: react整体是函数式的思想,把组件设计成纯组件,状态和逻辑通过参数传入,所以在react中,是单向数据流,推崇结合immutable来实现数据不可变; vue的思想是响应式的,也就是基于是数据可变的,通过对每一个属性建立Watcher来监听,当属性变化的时候,响应式的更新对应的虚拟dom。总之,react的性能优化需要手动去做,而vue的性能优化是自动的,但是vue的响应式机制也有问题,就是当state特别多的时候,Watcher也会很多,会导致卡顿,所以大型应用(状态特别多的)一般用react,更加可控。

        • 通过js来操作一切,还是用各自的处理方式: react的思路是all in js,通过js来生成html,所以设计了jsx,还有通过js来操作css,社区的styled-component、jss等; vue是把html,css,js组合到一起,用各自的处理方式,vue有单文件组件,可以把html、css、js写到一个文件中,html提供了模板引擎来处理。

        • 类式的组件写法,还是声明式的写法: react是类式的写法,api很少; 而vue是声明式的写法,通过传入各种options,api和参数都很多。所以react结合typescript更容易一起写,vue稍微复杂。

        • 扩展不同: react可以通过高阶组件(Higher Order Components--HOC)来扩展,而vue需要通过mixins来扩展

        • 什么功能内置,什么交给社区去做: react做的事情很少,很多都交给社区去做,vue很多东西都是内置的,写起来确实方便一些,
          比如 redux的combineReducer就对应vuex的modules,
          比如reselect就对应vuex的getter和vue组件的computed,
          vuex的mutation是直接改变的原始数据,而redux的reducer是返回一个全新的state,所以redux结合immutable来优化性能,vue不需要。

  • 相关阅读:
    Python自定义:粒子群优化算法
    deap实战_2017中国数学建模大赛_B题_第二题
    deap实战_2017中国数学建模大赛_B题_第二题
    webpack学习笔记(一) 核心概念
    webpack学习笔记
    CSS学习笔记(九) 居中方案
    CSS学习笔记(八) 弹性布局
    CSS学习笔记(七) 粘性布局
    CSS学习笔记(六) 定位
    CSS学习笔记
  • 原文地址:https://www.cnblogs.com/programb/p/14068819.html
Copyright © 2020-2023  润新知