美文网首页
react 与 vue有什么不同?

react 与 vue有什么不同?

作者: 说好的幸福2020 | 来源:发表于2020-08-29 09:33 被阅读0次

    1 语法不同
            1)vue 采用template模板(html)+js+样式(less,sass,css)的形式
            2)react 采用编写class 或者function的jsx形式
    2  this表示不同
            1)vue中编写的组件中的this为VueComponent实例对象(log打印this的时候可以看到为所在层级的实例对象)
            2)react class编写的组件中的this为react Element 对象(log打印this没有具体到层级),function编写的组件this为undefined
    3  编程范式不同
            1)vue写法限制(由于嵌在html中)不够自由
            2)react 写法采取jsx形式,能够遵循js的方式变成。(例如写个renderNode函数利用switch判断)
    4  数据绑定不同
            1)vue可以支持通过v-model对表单元素双向数据绑定
            2)react需自己编写事件触发函数实现
        但是vue与react都是数据流至view的单向形式
    5  渲染优化不同
            1)vue自身渲染实现的优化多,无需开发者切入
             2)react对渲染需开发者切入相对较多,props的更改会导致渲染。
             class组件形式使用shouldComponentUpdate来判断是否需要执行渲染。function组件中使用useMemo,useCallback来控制是否导致渲染。
    6  复用方式不同
            1)vue使用mixin混入的形式
            2)使用hoc高阶组件的形式多,例如react-redux中的connect函数,antd中的Form.create函数。

    相关文章

      网友评论

          本文标题:react 与 vue有什么不同?

          本文链接:https://www.haomeiwen.com/subject/csedsktx.html