美食杰---菜谱大全

本文探讨了前端如何从API获取数据并渲染到页面,包括二级路由的动态绑定和筛选功能实现。同时,介绍了后端数据分页的处理方法,详细阐述了页面初始化、页码管理和数据加载的逻辑,确保用户在刷新页面时能保持之前的状态,并提供了加载遮罩层的优化策略。
摘要由CSDN通过智能技术生成

思路

左侧思路

首先定义一个空数组,然后我们从api里把数据请求到这个空数组中,在模板中把数组遍历渲染到页面

第一个数组里面还有一个数组(list)我们可以看做一个二级路由,然后把这个list遍历出来
动态绑定把数据储存到路由中,

筛选部分同样是把数据渲染到页面中,筛选中第一层为属性所有的数据第二层为属性的分类,然后我们给第二层路由添加一个点击事件如果选中就赋值,如果没选中就默认选中第一个,然后动态绑定class点击添加颜色

为了用户的体验度我们可以设置一个空的数组把每一个点击过的分类项储存下来,存放到路由中,每次点击完成后不会收起来只有刷新页面才会收起

代码展示

第一步 :
定义一个空数组,然后我们从api里把数据请求到这个空数组中,在模板中把数组遍历渲染到页面

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

定义一个字符串,用来存放刷新tab时的值(一级路由),默认显示第一个

在这里插入图片描述
在这里插入图片描述

第二步 :

第一个数组里面还有一个数组(list)我们可以看做一个二级路由,然后把这个list遍历出来,同时动态绑定类添加背景颜色
动态绑定把数据储存到路由中

在这里插入图片描述
在这里插入图片描述

筛选部分

第一步
同样是把数据渲染到页面中,筛选中第一层为属性所有的数据第二层为属性的分类,然后我们给第二层路由添加一个点击事件如果选中就赋值,如果没选中就默认选中第一个,然后动态绑定class点击添加颜色

在这里插入图片描述
在这里插入图片描述
点击事件

在这里插入图片描述

第二步

为了用户的体验度我们可以设置一个空的数组把每一个点击过的分类项储存下来,存放到路由中,每次点击完成后不会收起来只有刷新页面才会收起

在这里插入图片描述

在这里插入图片描述

右侧思路

首先定义一个空数组(list)用于存放右侧所有的数据,其次自定义一个方法数据从query中拿出来,然后用params存储新增的数据page
,有的话给个页码,没有的话给个默认值(默认值为1)
每次使用完页数和数据之后删除掉(防止点击过快数据错乱)

初始化的loading为false (遮罩层)

把挂载好的数据,页数,页码总数量渲染到页面中,

当页码改变时触发点击事件重新更新页码以及数据
如果触发loading加载项使用nextTick添加一个延时遮罩层

(优化)
当重新刷新浏览器时也可以加一个遮罩层
第一次加载数据默认显示第一条数据

代码展示

首先定义一个空数组(list)用于存放右侧所有的数据

在这里插入图片描述

请求右侧的数据

在这里插入图片描述

其次自定义一个方法数据从query中拿出来,然后用params存储新增的数据page,有的话给个页码,没有的话给个默认值(默认值为1)
每次使用完页数和数据之后删除掉(防止点击过快数据错乱)

如果触发loading加载项使用nextTick添加一个延时遮罩层
在这里插入图片描述
初始化的loading为false (遮罩层)

在这里插入图片描述

把挂载好的数据,页数,页码总数量渲染到页面中,

在这里插入图片描述

当页码改变时触发点击事件重新更新页码以及数据

在这里插入图片描述

小tips:

因为我们改变页码时element ui中的组件不支持字符串,所以需要使用number把page转换成数字,这样就可以显示页码啦

在这里插入图片描述

(优化)
当重新刷新浏览器时也可以加一个遮罩层
第一次加载数据默认显示第一条数据

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值