vue2组件封装实战系列之aside组件

组件之 GfSide

侧边栏组件一般有固定宽度用于导航菜单,布局

效果预览

属性

参数 类型 说明 可选值 默认值
width String 侧边栏的宽度 30%

代码实现

这里我们使用了 function 组件来实现 space 组件,比较简洁灵活

js 复制代码
<template>
  <aside class="el-aside" :style="{width}" v-bind="$attrs">
    <slot></slot>
  </aside>
</template>

<script>
export default {
  name: "GfAside",
  componentName: "GfAside",
  props: {
    width: {
      type: String,
      default: "300px",
    },
  },
};
</script>

样式文件可以参考elementui的实现,后面会写一篇文章详细分析组件库的样式怎么去写的文章,敬请关注

使用

html 复制代码
<gf-aside :width="!isCollapse ? '210px' : '50px'">
  <SiderBar
    class="sidebar-container"
    :style="{ width: !isCollapse ? '210px' : '50px' }"
  />
</gf-aside>

可以根据自己的需要,对组件进行扩展,封装负责自己业务的组件也可以

这样,我们就实现了自己的 side 组件

相关推荐
a濯4 小时前
element plus el-table多选框跨页多选保留
javascript·vue.js
蓝婷儿5 小时前
前端面试每日三题 - Day 32
前端·面试·职场和发展
星空寻流年6 小时前
CSS3(BFC)
前端·microsoft·css3
九月TTS6 小时前
开源分享:TTS-Web-Vue系列:Vue3实现固定顶部与吸顶模式组件
前端·vue.js·开源
CodeCraft Studio6 小时前
数据透视表控件DHTMLX Pivot v2.1发布,新增HTML 模板、增强样式等多个功能
前端·javascript·ui·甘特图
一把年纪学编程6 小时前
【牛马技巧】word统计每一段的字数接近“字数统计”
前端·数据库·word
llc的足迹6 小时前
el-menu 折叠后小箭头不会消失
前端·javascript·vue.js
九月TTS7 小时前
TTS-Web-Vue系列:移动端侧边栏与响应式布局深度优化
前端·javascript·vue.js
曾经的你d7 小时前
【electron+vue】常见功能之——调用打开/关闭系统软键盘,解决打包后键盘无法关闭问题
vue.js·electron·计算机外设
Johnstons7 小时前
AnaTraf:深度解析网络性能分析(NPM)
前端·网络·安全·web安全·npm·网络流量监控·网络流量分析