学会看cube-UI文档,并掌握cube-tab-bar开发

前端需求分析

  • 底部导航
  • 首页Banner
  • 首页视频列表
  • 视频详情模块
  • 注册模块
  • 登陆模块
  • 个人信息模块
  • 下单模块
  • 订单列表模块

文档地址:https://didi.github.io/cube-ui/#/zh-CN/docs/quick-start

template开发

  在components下创建CommonFooter.vue

<template>
<div class="tab">
<cube-tab-bar v-model="selectedLabelSlots" @click="changHandler">
<cube-tab
v-for="(item) in tabs"
:icon="item.icon"
:label="item.label"
:key="item.path"
:value="item.path"
></cube-tab>
</cube-tab-bar>
</div>
</template>
<script>
export default {
data() {
return {
selectedLabelSlots: "/",
tabs: [
{
label: "首页",
icon: "cubeic-home",
path: "/"
},
{
label: "我的订单",
icon: "cubeic-like",
path: "/order"
},
{
label: "个人中心",
icon: "cubeic-person",
path: "/personal"
}
]
};
}
};
</script>

vue-router常见API

  • router.path:获取当前的路由
  • router.go(n):这个方法的参数是一个整数,表示在history记录中向前或者后退多少步,类似window.history.go(n)方法
  • router.push(path):导航到不同的path路径,这个方法会向history栈添加一个新的记录,所以当前用户点击浏览器后退按钮时,则回到之前的URL

完整CommonFooter.vue

<template>
<div class="tab">
<cube-tab-bar v-model="selectedLabelSlots" @click="changHandler">
<cube-tab
v-for="(item) in tabs"
:icon="item.icon"
:label="item.label"
:key="item.path"
:value="item.path"
></cube-tab>
</cube-tab-bar>
</div>
</template>
<script>
export default {
data() {
return {
selectedLabelSlots: "/",
tabs: [
{
label: "首页",
icon: "cubeic-home",
path: "/"
},
{
label: "我的订单",
icon: "cubeic-like",
path: "/order"
},
{
label: "个人中心",
icon: "cubeic-person",
path: "/personal"
}
]
};
},
methods: {
changHandler(path) {
//this.this.$route.path:当前路径
if (path !== this.this.$route.path) {
this.$routerouter.push(path);
}
}
},
created() {
//默认路由选择器,比如刷新页面,需要重新进到当前路由
this.selectedLabelSlots = this.this.$route.path;
}
};
</script>
<!--SCSS是⼀种CSS预处理语⾔, scoped 是指这个scss样式 只作⽤于当前组件-->
<style lang="scss" scoped>
.tab {
position: fixed;
bottom: 0;
z-index: 999;
background-color: #fff;
width: 100%;
border-top: 1px solid rgba($color: #000000, $alpha: 0.1);
}
.cube-tab_active {
color: #3bb149;
}
</style>

yb课堂 前端项目通用底部选项卡 CommonsFooter 《三十六》的更多相关文章

  1. 前端项目通用、常用js common.js

    var url = location.href; if (url.toLowerCase().indexOf("/akweb_admin/") == -1) { function ...

  2. 潭州课堂25班:Ph201805201 django 项目 第三十六课 后台文章管理(课堂笔记)

    get 请求, 1,获取文章标签 , 2,拿到前台传来的值, 3,根据前台传来的值在数据库中查询 4.,返回数据到前台,渲染, 分页算法 : 在 utils 下创建  paginator_script ...

  3. AngularJS进阶(三十六)AngularJS项目开发技巧之利用Service&Promise&Resolve解决图片预加载问题(后记)

    AngularJS项目开发技巧之利用Service&Promise&Resolve解决图片预加载问题(后记) 前言 在"AngularJS项目开发技巧之图片预加载" ...

  4. 前端学习(三十六)promise(笔记)

    一个页面:  头部.用户信息.新闻列表 jquery ajax:  1.$.ajax({    url:'',    dataType:'json', }).then(res=>{    //r ...

  5. Android项目实战(三十六):给背景加上阴影效果

    圆角背景大家应该经常用: 一个drawable资源文件  里面控制corner圆角 和solid填充色 <shape xmlns:android="http://schemas.and ...

  6. Web项目Shiro总结及源码(十六)

    shiro过虑器 过滤器简称 对应的java类 anon org.apache.shiro.web.filter.authc.AnonymousFilter authc org.apache.shir ...

  7. 我在一个前端项目中用js整理的一些通用方法,其中使用到的思想,主要就是约定了。

    把名称和后台来的json数据约定起来,可以达到的效果就是可以将东西统一化,减少差异,提升模块等的通用性,此后就可以实现具体不同模块内容可以自动或拷贝赋值的方式 2016.7.18 refactor s ...

  8. HTML5 开发APP(头部和底部选项卡)

    我们开发app有一定固定的样式,比如头部和底部选项卡部分就是公共部分就比如我在做的app进来的主页面就像图片显示的那样 我们该怎么实现呢,实现我们应该建一个主页面index.html,然后建五个子页面 ...

  9. TabBottomFragmentLayout【自定义底部选项卡区域(搭配Fragment)】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 自定义底部选项卡布局LinearLayout类,然后配合Fragment,实现切换Fragment功能. 缺点: 1.底部选项卡区域 ...

  10. FragmentTabHostBottomDemo【FragmentTabHost + Fragment实现底部选项卡】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 使用FragmentTabHost实现底部选项卡效果. 备注:该Demo主要是演示FragmentTabHost的一些设置和部分功能 ...

随机推荐

  1. 网络安全—模拟IP代理隐藏身份

    文章目录 网络拓扑 安装 使用 代理服务器设置 隐藏者设置 使用古老的ccproxy实现代理服务器,仅做实验用途,禁止做违法犯罪的事情,后果自负. 网络拓扑 均使用Windows Server 200 ...

  2. python命令行传参详解,optparse模块OptionParse类的学习

    官网链接:https://docs.python.org/3/library/optparse.html https://docs.python.org/2/library/argparse.html ...

  3. go高并发之路——go语言如何解决并发问题

    一.选择GO的原因 作为一个后端开发,日常工作中接触最多的两门语言就是PHP和GO了.无可否认,PHP确实是最好的语言(手动狗头哈哈),写起来真的很舒爽,没有任何心智负担,字符串和整型压根就不用区分, ...

  4. 张同乐-从零开始,打造高效可靠的Locust性能测试

    一.前言 欢迎来到Locust负载测试的世界!Locust是一款开源的负载测试工具,它可以模拟成千上万的用户同时访问你的应用程序,以测试其性能和稳定性. 这个工具具有易于使用.可扩展和高度可定制化等特 ...

  5. zabbix第一天 zabbix安装,添加监控项

    1. zabbix 介绍 公司规模大,服务器众多,运维人员需要用到zabbix来监控整个服务器的运行状况,避免服务器故障后运维人员无法察觉. 清华zabbix源: https://mirrors.tu ...

  6. UILabel的DrawDrect方法

    一.问题 如果继承UILabel实现自己的一个Label,并且在子类的DrawRect方法中留空,什么都不写,会发生什么? 代码如下: VC @interface ViewController () ...

  7. python+k8s——基础练习

    列表 core_api = client.CoreV1Api() # 管理核心资源(Pod, Service, ConfigMap 等) apps_api = client.AppsV1Api() # ...

  8. Excel相关技巧

    (1)如何实现EXCEL某个单元格满足条件整行变色? 链接:https://jingyan.baidu.com/article/75ab0bcba47c19d6864db2cf.html (2)获取表 ...

  9. 关于 CSDN 的恶臭嘴脸

    我有段时间确实希望通过 CSDN 增加我文章的阅读量.但是我怎么使用 CSDN,我想要的大概也就 cnblogs 相对符合预期,CSDN 真是垃圾. 为了钱真是什么都不要了,让我们这种没有自主经济来源 ...

  10. Linux扩展篇-shell编程(三)-shell运算符

    基本语法: 格式一 expr +. -. \*./. %(加.减.乘.除.求余) 格式二 "$((运算式))"或者"$[运算式]" 基本运算符 Shell 和其 ...