当前位置: 首页 > ai >正文

vue mixin混入与hook

mixin混入是 ‌选项式 API‌,在vue3-Composition API <script setup> 中无法直接使用,需通过 setup() 函数转换

vue2、vue3选项式API:

// mixins/mixin.js
export const mixin = {methods: {courseType(courseLevel) {const levelMap = {1: '初级',2: '中级',3: '高级'};return levelMap[courseLevel] || '';}}
}
组件引入mixin
<template><view><!-- 直接调用混入的 courseType 方法 --><text>课程等级: {{ courseType(level) }}</text></view>
</template>
import { mixin } from '@/mixins/mixin.js';
export default {mixins: [mixin],mounted() {console.log(this.courseType(2)); // 输出 "中级"}
}
在vue3-Composition API 组件(<script setup>)‌无法直接使用,需通过 setup() 函数转换:

在这里插入图片描述

vue3-Composition API 推荐使用 ‌自定义 Hook‌ 替代混入

// hooks/useCourseLevel.js
export function useCourseLevel() {const courseType = (courseLevel) => {const levelMap = {1: '初级',2: '中级',3: '高级'};return levelMap[courseLevel] || '';};return {courseType};
}
组件中使用
<script setup>
import { useCourseLevel } from '@/hooks/useCourseLevel.js';const { courseType } = useCourseLevel();
</script>// html
<!-- 级别 -->
<view class="descript">{{ courseType(courseLevel) }}</view>
http://www.xdnf.cn/news/2661.html

相关文章:

  • 如何使用可视化工具分析 JVM 的性能瓶颈?
  • Spring Security授权管理
  • 综合练习一
  • JAVA基础:Collections 工具类实战指南-从排序到线程安全
  • ViTa-Zero:零样本视觉触觉目标 6D 姿态估计
  • Ubuntu深度学习革命:NVIDIA-Docker终极指南与创新实践
  • LLVIP、KAIST、M3FD数据集
  • GD32F407单片机开发入门(十六)单片机IAP(在应用编程)详解及实战源码
  • 消息队列优化指南:处理堆积与保障消息可靠性
  • 喜马拉雅卖身腾讯音乐:在线音频独立时代的终结
  • Molex莫仕连接器:增强高级驾驶辅助系统,打造更安全的汽车
  • codeforces C. The Trail
  • 【Nginx】 使用least_conn负载均衡算法是否能将客户端的长连接分散到不同的服务器上demo
  • 【AI生产力工具】Windsurf,一款AI编程工具
  • 华纳云:centos如何实现JSP页面的动态加载
  • 模板方法模式(Template Method Pattern)
  • 数据库对象概述
  • Java项目与技术栈场景题深度解析
  • C语言(5)—操作符详解
  • leetcode 143. 重排链表
  • js day8
  • Java学习手册: IoC 容器与依赖注入
  • leetcode刷题日记——两数相加
  • 【Redis】基础4:作为分布式锁
  • 搭建speak yarn集群:从零开始的详细指南
  • 关于健身房管理系统前后端软件开发主要功能需求分析
  • 深入理解网络原理:TCP协议详解
  • MCP Servers玩玩WebUI自动化
  • 如何在idea 中写spark程序
  • UARA串口开发基础