vue Composables 组合式函数

官方文档在这里 cn.vuejs.org/guide/reusa...

作用

提取复杂逻辑,复用更方便。

例子

ts 复制代码
<script setup lang="ts">
import { useUserStatus } from '@/composables/useUserStatus'

const props = defineProps<{ user: User }>()
const { isOnline, statusText } = useUserStatus(props.user)
</script>

@是路径src/composables/useUserStatus

要自己写逻辑。

实现useUserStatus:

js 复制代码
// 模拟 useUserStatus composable
function useUserStatus() {
    const isOnline = ref(true);
    const lastChanged = ref(new Date().toLocaleTimeString());
    
    function toggleStatus() {
        isOnline.value = !isOnline.value;
        lastChanged.value = new Date().toLocaleTimeString();
    }
    
    function simulateNetworkChange() {
        // 随机改变状态来模拟网络变化
        if (Math.random() > 0.5) {
            isOnline.value = true;
        } else {
            isOnline.value = false;
        }
        lastChanged.value = new Date().toLocaleTimeString();
    }
    
    return {
        isOnline,
        lastChanged,
        toggleStatus,
        simulateNetworkChange
    };
}
相关推荐
ssshooter4 分钟前
Tauri 踩坑 appLink 修改后闪退
前端·ios·rust
刮涂层_赢大奖17 分钟前
我把 AI 编程 Agent 变成了宝可梦,让它们在像素风办公室里跑来跑去
前端·typescript·claude
重庆穿山甲1 小时前
Java开发者的大模型入门:Spring AI组件全攻略(二)
前端·后端
重庆穿山甲1 小时前
Java开发者的大模型入门:Spring AI组件全攻略(一)
前端·后端
布列瑟农的星空1 小时前
前端都能看懂的rust入门教程(二)——函数和闭包
前端·后端·rust
晨米酱2 小时前
四、Prettier 编辑器集成指南
前端·代码规范
文心快码BaiduComate2 小时前
Comate 4.0新年全面焕新!底层重构、七大升级、复杂任务驾驭力跃升
前端·程序员·架构
怪可爱的地球人2 小时前
uni-app:5 步接入 vite-plugin-uni-pages,用 <route> 自动生成 pages.json
前端
前端Hardy2 小时前
告别 !important:现代 CSS 层叠控制指南,90% 的样式冲突其实不用它也能解
前端·vue.js·面试
前端Hardy2 小时前
Vue 3 性能优化的 5 个隐藏技巧,第 4 个连老手都未必知道
前端·vue.js·面试