可能是我格局比较小,没有在市面上见过类似的侧边栏工具,所以想封装一个这样的组件。也是受我们官网的启发,效果如下:
封装思路
由两个组件组成,父组件用来包裹,子组件用来放具体内容(受
element-ui
组件库的时间线
的启发)支持位置自定义,返回顶部按钮可选
子组件
better-sidebar-item
可以自定义图标,标题,弹层,跳转链接弹层内容通过插槽引入
最终效果
目前就能想到这么些东西,封装难度并不大,下面是使用说明:
文档地址
https://www.liuguisheng.vip/better-sidebar/
better-sidebar(侧边栏工具)
下载依赖
npm i better-sidebar --save
引用
import Vue from "vue";import BetterSidebar from "better-sidebar";import "better-sidebar/dist/lib/better-sidebar.css";
Vue.use(BetterSidebar);
better-sidebar 组件介绍
属性 | 类型 | 可选值 | 默认值 | 描述 |
---|---|---|---|---|
top | number | - | 100 | 侧边栏距离浏览器顶部的位置 |
position | string | left/right | right | 侧边栏的位置 |
topButton | boolean | true/false | true | 是否显示返回顶部按钮 |
better-sidebar-item 组件介绍
属性 | 类型 | 可选值 | 默认值 | 描述 |
---|---|---|---|---|
icon | string | - | - | 图标字体(该依赖不提供,需要自行下载,引入项目中) |
title | string | - | - | 文字 |
popver | boolean | true/false | false | 是否显示弹出层(内容通过slot 插入) |
link | string | - | - | 点击跳转到新的页面地址 |
使用
class="cell-box"icon="icon-gonggao iconfont"title="公告"popver="true"
>插槽 >class="cell-box"icon="icon-biaoge iconfont"title="统计"link="https://www.liuguisheng.vip"
/>class="cell-box"icon="icon-huodong iconfont"title="活动"
/>