• react与vue的对比


    模板:

    Vue
    Vue应用的默认选项是把markup放在HTML文件中。
    数据绑定表达式采用的是和Angular相似的mustache语法,而指令(特殊的HTML属性)用来向模板添加功能。
    
    React
    它要求开发者借助JSX在JavaScript中的render()中创建DOM
    
    渲染函数更加容易调试和测试,Javascript模板可以组织成具有很好的分解性和干(DRY)代码的组件,干代码的可重用性和可测试性更好
    模板容易出现很难注意到的运行时错误,同时也很难去测试,重构和分解;
    vue
    2.0中vue也增加了渲染函数,但是React的渲染系统可配置性更强

    数据状态:

    React
    
    state是不可变(immutable)的,所以不能直接改变,需要使用API中的setState方法:
    this.setState({ 
        message: this.state.message.split('').reverse().join('') 
    });
    
    Vue
    数据是可变(mutated)的,所以同样的操作看起来更加简洁。
    this.message = this.message.split('').reverse().join('');
    Vue的响应系统还有有些坑的,例如:它不能检测属性的添加和删除和某些数组更改。这时候就要用到Vue API中的类似于React的set方法来解决。

    数据渲染速度:

    都是将虚拟DOM并同步到真实DOM中
    Vue核心开发者提供了一个benchmark测试,可以看出Vue的渲染系统比React的更快,同时vue更轻量

    跨平台

    React
    React Native是一个使用Javascript构建移动端原生应用程序(iOS,Android)的库。 它与React.js相同,只是不使用Web组件,而是使用原生组件。
    Vue将HTML模板作为它设计的核心部分,并且现有特性不支持自定义渲染,因此很难看出目前的Vue.js的跨平台能力能像React和React Native一样强大。

    总结:

    ue的优势是:

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

    React的优势是:

    • 更适合大型应用和更好的可测试性
    • Web端和移动端原生APP通吃
    • 更大的生态系统,更多的支持和好用的工具
  • 相关阅读:
    Hadoop IO
    HDFS
    简介
    队列
    classLoader和Class.forName的区别
    String为什么是final类型的
    Fabric
    超级账本——面向企业的分布式账本
    以太坊
    pycharm破解教程
  • 原文地址:https://www.cnblogs.com/avidya/p/7472030.html
Copyright © 2020-2023  润新知