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 组件

相关推荐
_阿南_4 小时前
项目中新增给AI制定的代码规范
前端·程序员
名字还没想好☜4 小时前
React 实现暗黑模式切换:localStorage 持久化、SSR 首屏闪烁与跟随系统主题
前端·javascript·react.js·ecmascript·react·next.js
console.log('npc')6 小时前
Git 冲突与 AI 协助指南
前端·人工智能·git·大模型
爱学堂IT分享7 小时前
Cesium可视化系统实战课程-Cesium教程学习
前端
糖墨夕7 小时前
理解大语言模型:Agent 的“大脑”
前端·agent
Rain的Java大神之路7 小时前
JavaWeb开发如何解决跨域问题
java·前端·后端·nginx·web安全·面试·运维开发
cpolar技术支持8 小时前
浏览器也能跑本地 AI:用 Transformers.js + WebGPU 做一个最小推理 Demo,cpolar 给同事远程体验
前端·ai·cpolar·webgpu·transformers.js
计算机毕设定制辅导-无忧学长8 小时前
《基于SpringBoot青年公寓出租管理系统的设计与实现》
java·vue.js·spring boot·青年公寓出租管理系统
计算机魔术师9 小时前
OpenAI 发布 GPT-6 Astra:多项基准刷新纪录, cybersecurity 能力达 Critical 阈值
前端
xy34539 小时前
Axure9.0中继器遮罩实现方法
前端·ui·html·axure·原型·产品设计