19、分类详情页之基本页面结构

简介: 前言:这章讲下分类页面的撰写,主要是涉及几个知识点:① 编程式路由的运用;② 阿里巴巴矢量图标库;③ vue.js中如何获取屏幕的高度并动态设置元素的高度;Github:https://github.com/Ewall1106/mall(请选择分支chapter19)完成的效果图请滑到底部查看。

前言:这章讲下分类页面的撰写,主要是涉及几个知识点:① 编程式路由的运用;② 阿里巴巴矢量图标库;③ vue.js中如何获取屏幕的高度并动态设置元素的高度;
Github:https://github.com/Ewall1106/mall(请选择分支chapter19)
完成的效果图请滑到底部查看。

1、新建分类页面

(1)进入view文件夹下面新建一个classify.vue组件

img_dab967c5f92eaeb12c25751280430c9a.png
classify.vue

(2)路由文件中添加路由

img_db17f43f6e5d7e3842b38409c510d76d.png
classify.png

2、路由跳转

(1)修改一下mock数据结构,为每一个分类模块添加一个id

img_04be13391c0a2e82fbf8c4787c2b1f7b.png
image.png

(2)home.vue中添加跳转事件,并携带每个类目的id

img_68b21ff52b82ef8c9afd6a2e89d92e00.png
image.png

(3)methods属性中定义gotoClassify方法

gotoClassify(id) {
    this.$router.push({
        path: "/classify",
        query: {
            id: id
        }
    });
}

具体关于路由的跳转就不多讲了,具体可以参考前面第5章vue-router之什么是编程式路由

3、顶部栏

(1)基本结构

img_7bd77ef98b28740c4f51bcac13771485.png
顶部栏基本结构

这里主要就是一个阿里巴巴图标库的引用,参考第9章:阿里巴巴矢量图库icon-font的运用的设置就好。

(2)添加点击事件

img_3ff3db7d011bc2f9421a72a39f7ebec1.png
添加click事件
img_699b9d4e1c8c9ab5ac1c3edd4b948688.png
image.png

4、主体部分

因为主体部分高度要自适应,所以涉及到的一个问题就是:vue.js中如何获取屏幕的高度并动态设置元素的高度?

(1)我们先获取下屏幕可见区域的高度然后减去顶部栏的高度,作为我们主体部分的高度;

img_6fdfb1f31609f7fabeb6fef6ea24b573.png
获取可见屏幕高度

PS:关于屏幕各种高度的获取我这里丢张图:

img_23b68044960c3277bb108d35900f0a08.png
屏幕导读获取一览图

(2)给div.main元素设置高度

可以参考:https://cn.vuejs.org/v2/guide/class-and-style.html

<div class="main" :style="{height:mainHeight}">
</div>

(3)其它的就是一些css基本布局了,我就不多说了,具体可以看仓库代码,这里只讲个::before在css的运用

img_c98ecab90d93a5cab463fade2122eb5f.png
::before的运用

<div class="item item_on">女装</div>

.item {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    height: 1.28rem;
    line-height: 1.28rem;
    text-align: center;
}
.item_on::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 0.10667rem;
    height: 1.28rem;
    font-size: 0;
    background-color: #de3d96;
}
.item_on {
    background: #fff;
}

5、页面呈现

最后页面的一个基本效果呈现:

img_381edfb17dfc2ece46f61f51edfabfd5.png
效果图
目录
相关文章
|
1月前
|
XML API 数据库
商品详情数据API接口概念(sku详情图属性等全面的解析)
商品详情数据API接口是指一种编程接口(API, Application Programming Interface),它允许开发者或系统以编程方式获取商品的详细信息,包括但不限于SKU(Stock Keeping Unit,库存量单位)的详细信息、商品图片、商品属性、价格、库存状态、用户评价等。这种接口通常由电商平台、商品数据库服务商或第三方数据提供商提供,旨在帮助开发者或企业快速集成商品数据到其应用程序或系统中。
|
小程序 JavaScript 数据库
小程序分类页实现三级分类,顶部导航栏,左侧分类栏,右侧数据列表
小程序分类页实现三级分类,顶部导航栏,左侧分类栏,右侧数据列表
194 0
【Axure教程】分类筛选卡片(订单卡片案例)
【Axure教程】分类筛选卡片(订单卡片案例)
【Axure教程】分类筛选卡片(订单卡片案例)
|
前端开发 开发者
分类页-顶部通栏 |学习笔记
快速学习 分类页-顶部通栏
140 0
分类页-顶部通栏 |学习笔记
|
前端开发 JavaScript 开发者
分类页-左侧栏 |学习笔记
快速学习 分类页-左侧栏
58 0
分类页-左侧栏 |学习笔记
分类页-页面结构 |学习笔记
快速学习 分类页-页面结构
53 0
|
前端开发 开发者 容器
分类页-右测内容 |学习笔记
快速学习 分类页-右测内容
82 0
|
前端开发 开发者 容器
分类页-左侧的滑动|学习笔记
快速学习 分类页-左侧的滑动
63 0
|
测试技术
【TP5.1】树状导航栏(无极限分类)
【TP5.1】树状导航栏(无极限分类)
143 0
【TP5.1】树状导航栏(无极限分类)