类似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时,其放大效果会有些问题,后续需要继续改进。

这里是组件的参数:

相关推荐
bin91534 分钟前
npm报错
前端·npm·node.js
一指流沙q11 分钟前
Chrome被360导航篡改了怎么改回来?
前端·chrome
laocooon52385788643 分钟前
HTML CSS 超链
前端·css·html
LUwantAC1 小时前
CSS(二):美化网页元素
前端·css
m0_748251081 小时前
docker安装nginx,docker部署vue前端,以及docker部署java的jar部署
java·前端·docker
我是ed1 小时前
# thingjs 基础案例整理
前端
Ashore_1 小时前
从简单封装到数据响应:Vue如何引领开发新模式❓❗️
前端·vue.js
落魄实习生1 小时前
小米路由器开启SSH,配置阿里云ddns,开启外网访问SSH和WEB管理界面
前端·阿里云·ssh
顽疲1 小时前
从零用java实现 小红书 springboot vue uniapp (6)用户登录鉴权及发布笔记
java·vue.js·spring boot·uni-app
bug丸1 小时前
v8引擎垃圾回收
前端·javascript·垃圾回收