码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • vue2和vue3的区别


    目录

    一、vue2和vue3数据双向绑定原理发生改变

    二、vue3支持碎片化(Fragment)

    三、vue2和vue3选用api不同(v2和v3最大的不同点)

    四、建立数据的方式

    五、生命周期函数不同

    六、父子传参方式不同

    七、vue3新增了(teleport)瞬移新特性


    一、vue2和vue3数据双向绑定原理发生改变

    vue2:vue2的数据双向绑定原理使用的是es5的数据劫持object.defineProperty配合发布订阅模式来实现
        优点:兼容性相对好
    vue3:通过proxy的api(Reflect)实现
        优点:可以直接监听对象而非属性,可以直接监听数组的变化, 有多达 13 种拦截方法,不限于 apply、ownKeys、deleteProperty、has 等等是Object.defineProperty 不具备的;

    二、vue3支持碎片化(Fragment)

    组件中有多个根节点

    优点:减少标签层级,减少内存占用

    三、vue2和vue3选用api不同(v2和v3最大的不同点)

    vue2:采用选项式 API (Options API),

     在 vue2.x 项目中使用的就是 选项API 写法

    代码风格:date选项写数据,methods选项写函数,一个功能逻辑的代码分散

    优点:易于学习和使用,写代码的位置已经约定好了

    缺点:代码组织性差,相似的逻辑代码不便于复用,逻辑复杂代码多了不好阅读。

    虽然提供了 mixins(混入) 用来封装逻辑,但是出现数据函数覆盖的概率很大,不好维护

    vue3:组合式 API (Composition API),

    在 vue3 中使用的就是 组合API 写法

    代码风格:一个功能逻辑的代码组织在一起(包括数据,函数、、、)

    优点:功能逻辑复杂繁多情况下,各个功能逻辑代码组织再一起,便于阅读和维护

    缺点:需要有良好的代码组织能力和拆分逻辑能力 

    vue3支持选项式api和组合式api

    四、建立数据的方式

    vue2:数据放在data中

    vue3:需要使用setup()方法,使用该方法需要引入

    五、生命周期函数不同

    1. //vue2选择式 //vue3选择式 //vue3组合式
    2. beforeCreate beforeCreate setup =beforeCreate+ created
    3. created created setup
    4. beforeMount beforeMount onBeforeMount
    5. mounted mounted onMounted
    6. beforeUpdate beforeUpdate onBeforeUpdate
    7. updated updated onUpdated
    8. beforeDestroy beforeUnmount onBeforeUnmount
    9. destroyed unmounted onUnmounted

    六、父子传参方式不同

    vue2:

    父传子:props,

    子传父:$emit

    vue3:setup()函数特性,vue3还给我们提供了provide和inject,我们可以在父组件中通过provide暴露属性或方法,子组件通过inject接受,并且只要是父组件的后代,都可以通过inject接收到父组件暴露的值

    七、vue3新增了(teleport)瞬移新特性

  • 相关阅读:
    每天一个数据分析题(三百四十六)
    面试知识点--基础篇
    实现地址转换的硬件机构
    使用 redis 减少 秒杀库存 超卖思路
    ROCKET PROPULSION ELEMENTS——DEFINITIONS AND FUNDAMENTALS笔记
    Python:实现djb2哈希算法(附完整源码)
    Docker Hub使用
    基于 Servlet 的博客系统
    【Hello Algorithm】 暴力递归到动态规划 -- 总结
    Docker 容器连接:构建安全高效的容器化网络生态
  • 原文地址:https://blog.csdn.net/flhhly/article/details/127862573
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号