关于vue3的两种API写法——选项API和组合API

简介: 关于vue3的两种API写法——选项API和组合API

 理解什么是选项API写法,什么是组合API写法

image.gif

Options API

什么是选项API写法:Options API

    • 在vue2.x项目中使用的就是选项API写法
    • 代码风格:data选项写数据,methods选项写函数...,一个功能逻辑的代码分散
    • 优点:易于学习和使用,写代码的位置已经约定好
    • 缺点:代码组织性差,相似的逻辑代码不便于复用,逻辑复杂代码多了不好阅读
    • 补充:虽然提供mixins用来封装逻辑,但是出现数据函数覆盖的概率很大,不好维护
    <template><divclass="container"><div>鼠标位置:</div><div>X轴:{{x}}</div><div>Y轴:{{y}}</div><hr><div>{{count}} <button@click="add()">自增</button></div></div></template><script>exportdefault {
    name: 'App',
    data () {
    return {
    x: 0,
    y: 0,
    count: 0    }
      },
    mounted() {
    document.addEventListener('mousemove', this.move)
      },
    methods: {
    move(e) {
    this.x=e.pageXthis.y=e.pageY    },
    add () {
    this.count++    }    
      },
    destroyed() {
    document.removeEventListener('mousemove', this.move)
      }
    }
    </script>

    image.gif


    Compositon API

     什么是组合API写法:Composition API

      • 咱们在vue3.0项目中将会使用组合API写法
      • 代码风格:一个功能逻辑的代码组织在一起(包含数据,函数...)
      • 优点:功能逻辑复杂繁多情况下,各个功能逻辑代码组织再一起,便于阅读和维护
      • 缺点:需要有良好的代码组织能力和拆分逻辑能力
      • 补充:为了能让大家较好的过渡到vue3.0的版本来,也支持vue2.x选项API写法
      <template><divclass="container"><div>鼠标位置:</div><div>X轴:{{x}}</div><div>Y轴:{{y}}</div><hr><div>{{count}} <button@click="add()">自增</button></div></div></template><script>import { onMounted, onUnmounted, reactive, ref, toRefs } from'vue'exportdefault {
      name: 'App',
      setup () {
      // 鼠标移动逻辑constmouse=reactive({
      x: 0,
      y: 0    })
      constmove=e=> {
      mouse.x=e.pageXmouse.y=e.pageY    }
      onMounted(()=>{
      document.addEventListener('mousemove',move)
          })
      onUnmounted(()=>{
      document.removeEventListener('mousemove',move)
          })
      // 累加逻辑constcount=ref(0)
      constadd= () => {
      count.value++    }
      // 返回数据return {
      ...toRefs(mouse),
      count,
      add    }
        }
      }
      </script>

      image.gif

      目录
      相关文章
      |
      6天前
      |
      JavaScript 前端开发 API
      深入浅出:Vue 3 Composition API 的魅力与实践
      【2月更文挑战第13天】 本文将探索 Vue 3 的核心特性之一——Composition API。通过对比 Options API,本文旨在揭示 Composition API 如何提高代码的组织性和可复用性,并通过实际案例展示其在现代前端开发中的应用。不同于传统的技术文章摘要,我们将通过一个具体的开发场景,引领读者步入 Composition API 的世界,展现它如何优雅地解决复杂组件逻辑的管理问题,从而激发读者探索和运用 Vue 3 新特性的热情。
      27 1
      |
      6天前
      |
      JavaScript API
      vue 3.0 所采用的 Composition Api 和 vue 2.0 使用的 Option Api 区别
      vue 3.0 所采用的 Composition Api 和 vue 2.0 使用的 Option Api 区别
      40 0
      |
      4天前
      |
      JavaScript 架构师 API
      Vue 3.x全面升级指南:Composition API深度探索
      Vue 3.x 的全面升级引入了 Composition API,这是对 Vue 2.x 传统 Options API 的一个重大改进,它提供了更加灵活和模块化的代码组织方式.
      10 0
      |
      6天前
      |
      JavaScript API 开发者
      Vue3有哪些常用的API
      Vue3有哪些常用的API
      13 1
      |
      6天前
      |
      JavaScript API
      Vue3 API函数及功能
      Vue3 API函数及功能
      8 0
      |
      6天前
      |
      JavaScript 前端开发 API
      Vue3 组合式 API
      Vue3 组合式 API
      |
      6天前
      |
      JavaScript API
      Vue3的手脚架使用和组件父子间通信-插槽(Options API)学习笔记
      Vue3的手脚架使用和组件父子间通信-插槽(Options API)学习笔记
      32 3
      |
      4天前
      |
      监控 安全 数据挖掘
      Email 接口API有哪些?具体分析一下阿里云和AOK的优点
      本文介绍了常见的Email接口API,如阿里云邮件推送、AOKSend、SendGrid、Mailgun和Amazon SES。阿里云API以其高稳定性和数据分析功能脱颖而出,支持批量发送和多语言;而AOKSend API以易于集成、高安全性和优秀客户支持为亮点。企业在选择时应考虑自身需求和预算,以优化邮件营销效果。
      |
      4天前
      |
      定位技术 API
      Angular 调用导入百度地图API接口,2024春招BAT面试真题详解
      Angular 调用导入百度地图API接口,2024春招BAT面试真题详解
      |
      4天前
      |
      JSON 安全 API
      解锁淘宝商品评论API接口:电商数据分析的新视角
      淘宝商品评论API接口是淘宝开放平台提供的一组API接口,允许开发者通过编程方式获取淘宝商品评论数据。这些接口可以获取到商品的详细信息、用户评论、评分等数据,为电商数据分析提供了丰富的素材。

      热门文章

      最新文章