类似mac dock的tab切换组件

一、效果图

鼠标在圆圈位置的放大效果

二、所用组件库

这里使用的组件库为contextmenu-ui组件库

安装方式:

复制代码
npm i contextmenu-ui

引用方式:

复制代码
// main.js

import App from './App.vue'
import VueTestUI from 'contextmenu-ui/dist/contextmenu-ui.umd.cjs'
import 'contextmenu-ui/dist/index.css'

const app = createApp(App)
app.use(VueTestUI);

三、所用组件及如何使用

所用的组件则是其中的ZsTab组件,这里直接上代码

html 复制代码
<template>
    <div>
        <ZsTab :active-name="activeName" :is-trans="true">
            <ZsTabPane name="first"></ZsTabPane>
            <ZsTabPane name="second"></ZsTabPane>
            <ZsTabPane name="third"></ZsTabPane>
            <ZsTabPane name="fourth"></ZsTabPane>
            <ZsTabPane name="fifth"></ZsTabPane>
            <ZsTabPane name="sixth"></ZsTabPane>
            <ZsTabPane name="seventh"></ZsTabPane>
        </ZsTab>
    </div>
</template>
<script setup>
import { ref } from 'vue'
const activeName = ref('first')
</script>

直接在ZsTabPane标签中填充内容即可,其中is-trans属性最好设置为true,这个组件的放大效果还不错,但是当ZsTabPane组件的内容单位为px时,其放大效果会有些问题,后续需要继续改进。

这里是组件的参数:

相关推荐
喜欢你,还有大家6 分钟前
FTP文件传输服务
linux·运维·服务器·前端
该用户已不存在9 分钟前
你没有听说过的7个Windows开发必备工具
前端·windows·后端
Bi20 分钟前
Dokploy安装和部署项目流程
运维·前端
普通网友22 分钟前
前端安全攻防:XSS, CSRF 等防范与检测
前端·安全·xss
携欢25 分钟前
PortSwigger靶场之Reflected XSS into attribute with angle brackets HTML-encoded通关秘籍
前端·xss
小爱同学_28 分钟前
React知识:useState和useRef的使用
前端·react.js
再学一点就睡36 分钟前
双 Token 认证机制:从原理到实践的完整实现
前端·javascript·后端
随风飞翔的胖子38 分钟前
js-cookie详细介绍及在vue3中的使用方法
vue.js·浏览器
wallflower202038 分钟前
滑动窗口算法在前端开发中的探索与应用
前端·算法
蚂蚁绊大象38 分钟前
flutter第二话题-布局约束
前端