思路
左侧思路
首先定义一个空数组,然后我们从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转换成数字,这样就可以显示页码啦
(优化)
当重新刷新浏览器时也可以加一个遮罩层
第一次加载数据默认显示第一条数据