前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vue CLI 2 脚手架 TabBar 组件封装

Vue CLI 2 脚手架 TabBar 组件封装

作者头像
很酷的站长
发布2022-12-28 15:45:42
2520
发布2022-12-28 15:45:42
举报
文章被收录于专栏:站长的编程笔记
1. 前言

本文记录在 vue cli 2 中封装 tabbar 组件详细步骤,主要是为了感受 vue 的组件封装思想,也是前面学习 vue 基础的练习案例

2. 清理脚手架

删除图片: src/assets/logo.png

删除 HelloWorld 组件: src/components/HelloWorld.vue

清理 HelloWorld 组件: src/router/index.js (HelloWorld 组件路由配置)

清理 APP 组件: src/App.vue, 去除样式代码和模板内容,清理后内容如下:

代码语言:javascript
复制
<template>
<div id="app"></div>
</template>
<script>
export default {
name: "App",
};
</script>
<style>
</style>
3. 搭建 tabbar 基本布局

APP 组件

代码语言:javascript
复制
<template>
<div id="app">
<div id="tab-bar">
<div>首页</div>
<div>分类</div>
<div>购物车</div>
<div>我的</div>
</div>
</div>
</template>

tabbar 图片存放目录: src/assets/img/tabbar

基础样式文件: src/assets/css/base.css

代码语言:javascript
复制
body {
margin: 0;
padding: 0;
}

在 APP 组件的 style 标签中导入基础样式文件

代码语言:javascript
复制
<style>
@import "./assets/css/base.css";
</style>
4. 书写 tabbar 基本样式

补充: tabbar 高度一般都是 49px,文字大小 14px

模板内容

代码语言:javascript
复制
<template>
<div id="app">
<div id="tab-bar">
<div class="tab-bar-item">首页</div>
<div class="tab-bar-item">分类</div>
<div class="tab-bar-item">购物车</div>
<div class="tab-bar-item">我的</div>
</div>
</div>
</template>

样式代码

代码语言:javascript
复制
@import "./assets/css/base.css";
#tab-bar {
display: flex;
position: fixed;
left: 0;
right: 0;
bottom: 0;
background-color: #f6f6f6;
box-shadow: 0 -1px 1px rgba(100, 100, 100, 0.1);
}
.tab-bar-item {
flex: 1;
height: 49px;
text-align: center;
font-size: 14px;
}

效果如下图所示

5. TabBar 组件封装

创建 TabBar 组件: src/components/tabbar/TabBar.vue

将 APP.vue 中的 tabbar 代码抽离到 TabBar 组件中,TabBar 组件内容:

代码语言:javascript
复制
<template>
<div id="tab-bar">
<div class="tab-bar-item">首页</div>
<div class="tab-bar-item">分类</div>
<div class="tab-bar-item">购物车</div>
<div class="tab-bar-item">我的</div>
</div>
</template>
<script>
export default {
name: "TabBar",
};
</script>
<style scoped>
#tab-bar {
display: flex;
position: fixed;
left: 0;
right: 0;
bottom: 0;
background-color: #f6f6f6;
box-shadow: 0 -1px 1px rgba(100, 100, 100, 0.1);
}
.tab-bar-item {
flex: 1;
height: 49px;
text-align: center;
font-size: 14px;
}
</style>

调整 TabBar 组件

代码语言:javascript
复制
<div id="tab-bar">
<div class="tab-bar-item">
<img src="@/assets/img/tabbar/home.png" />
<div>首页</div>
</div>
<div class="tab-bar-item">
<img src="@/assets/img/tabbar/category.png" />
<div>分类</div>
</div>
<div class="tab-bar-item">
<img src="@/assets/img/tabbar/cart.png" />
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 前言
  • 2. 清理脚手架
  • 3. 搭建 tabbar 基本布局
  • 4. 书写 tabbar 基本样式
  • 5. TabBar 组件封装
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档