vue3【详解】选项式 API 实现逻辑复用

简介: vue3【详解】选项式 API 实现逻辑复用

  1. 抽离逻辑代码到一个函数
  2. 函数命名约定为 useXxxx格式 ( React Hooks 也是 )
  3. 在 setup 中引用 useXxx 函数

演示代码:实时获取鼠标的坐标

逻辑封装 useMousePosition.js

// 导入 ref, onMounted, onUnmounted
import { ref, onMounted, onUnmounted } from "vue";

function useMousePosition() {
  // 声明响应式变量 x,y
  let x = ref(0);
  let y = ref(0);

  function update(e) {
    // 事件的 pageX 即 x 坐标
    x.value = e.pageX;
    // 事件的 pageY 即 x 坐标
    y.value = e.pageY;
  }

  onMounted(() => {
    // 实例挂载完成时,添加对鼠标移动事件的监听 mousemove
    window.addEventListener("mousemove", update);
  });

  onUnmounted(() => {
    // 实例卸载完成时,移除对鼠标移动事件的监听 mousemove
    window.removeEventListener("mousemove", update);
  });

  // 返回 x,y
  return {
    x,
    y,
  };
}

// 默认导出函数 useMousePosition
export default useMousePosition;

页面使用 index.vue

<script setup>
import useMousePosition from "./useMousePosition";

let { x, y } = useMousePosition();
</script>

<template>
  <p>鼠标 x 坐标: {{ x }}</p>
  <p>鼠标 y 坐标: {{ y }}</p>
</template>

目录
相关文章
|
17天前
|
JavaScript 前端开发 API
Vue 3新特性详解:Composition API的威力
【10月更文挑战第25天】Vue 3 引入的 Composition API 是一组用于组织和复用组件逻辑的新 API。相比 Options API,它提供了更灵活的结构,便于逻辑复用和代码组织,特别适合复杂组件。本文将探讨 Composition API 的优势,并通过示例代码展示其基本用法,帮助开发者更好地理解和应用这一强大工具。
22 1
|
1月前
|
缓存 JavaScript API
Vue 3的全新Reactivity API:解锁响应式编程的力量
Vue 3引入了基于Proxy的全新响应式系统,提升了性能并带来了更强大的API。本文通过示例详细介绍了`reactive`、`ref`、`computed`、`watch`等核心API的使用方法,帮助开发者深入理解Vue 3的响应式编程。无论你是初学者还是资深开发者,都能从中受益,构建更高效的应用程序。
19 1
|
1月前
|
缓存 JavaScript API
Vue 3的全新Reactivity API:解锁响应式编程的力量
【10月更文挑战第9天】Vue 3的全新Reactivity API:解锁响应式编程的力量
16 3
|
1月前
|
缓存 JavaScript 前端开发
深入理解 Vue 3 的 Composition API 与新特性
本文详细探讨了 Vue 3 中的 Composition API,包括 setup 函数的使用、响应式数据管理(ref、reactive、toRefs 和 toRef)、侦听器(watch 和 watchEffect)以及计算属性(computed)。我们还介绍了自定义 Hooks 的创建与使用,分析了 Vue 2 与 Vue 3 在响应式系统上的重要区别,并概述了组件生命周期钩子、Fragments、Teleport 和 Suspense 等新特性。通过这些内容,读者将能更深入地理解 Vue 3 的设计理念及其在构建现代前端应用中的优势。
31 0
深入理解 Vue 3 的 Composition API 与新特性
|
22天前
|
API
《vue3第四章》Composition API 的优势,包含Options API 存在的问题、Composition API 的优势
《vue3第四章》Composition API 的优势,包含Options API 存在的问题、Composition API 的优势
25 0
|
22天前
|
JavaScript 前端开发 API
《vue3第六章》其他,包含:全局API的转移、其他改变
《vue3第六章》其他,包含:全局API的转移、其他改变
20 0
|
1月前
|
存储 前端开发 JavaScript
深入理解Vue3的组合式API及其实践应用
【10月更文挑战第5天】深入理解Vue3的组合式API及其实践应用
79 0
|
4天前
|
JSON API 数据格式
淘宝 / 天猫官方商品 / 订单订单 API 接口丨商品上传接口对接步骤
要对接淘宝/天猫官方商品或订单API,需先注册淘宝开放平台账号,创建应用获取App Key和App Secret。之后,详细阅读API文档,了解接口功能及权限要求,编写认证、构建请求、发送请求和处理响应的代码。最后,在沙箱环境中测试与调试,确保API调用的正确性和稳定性。
|
16天前
|
供应链 数据挖掘 API
电商API接口介绍——sku接口概述
商品SKU(Stock Keeping Unit)接口是电商API接口中的一种,专门用于获取商品的SKU信息。SKU是库存量单位,用于区分同一商品的不同规格、颜色、尺寸等属性。通过商品SKU接口,开发者可以获取商品的SKU列表、SKU属性、库存数量等详细信息。
|
17天前
|
JSON API 数据格式
店铺所有商品列表接口json数据格式示例(API接口)
当然,以下是一个示例的JSON数据格式,用于表示一个店铺所有商品列表的API接口响应

热门文章

最新文章