【微信小程序——案例——本地生活(列表页面)】

devtools/2024/9/23 9:26:14/

案例——本地生活(列表页面)

九宫格中实现导航跳转——以汽车服务为案例(之后可以全部实现页面跳转——现在先实现一个)

在app.json中添加新页面
在这里插入图片描述

修改之前的九宫格view改为navitage
在这里插入图片描述

效果图:
请添加图片描述

请添加图片描述

动态设置标题内容——调用wx.setNavigationBarTitle( Object object)动态设置当前页面的标题

onLoad( Object query)页面加载时触发,可以在onLoad的参数中获取打开当前页面路径中的参数

onReady()页面初次渲染完成时触发,注:在对界面内容进行设置的API如:wx.setNavigationBarTitle,请在onReady()之后进行

注:如图可以看到之前home.wxml中导航栏都会传递一个参数——所以能实现动态传参
请添加图片描述

  1. 在data中申请一个数组query:{}
    在这里插入图片描述
  • 在生命周期函数onLoad中获取到页面传过来的参数,将值赋给query数组
    在这里插入图片描述

  • 在onReady()中调用wx.setNavigationBarTitle——将query中的参数赋值给wx.setNavigationBarTitle函数的属性项title
    在这里插入图片描述
    效果图:
    请添加图片描述
    请添加图片描述

分页的形式,加载指定分类下商铺列表的数据——由于请求不到数据所以我用的假数据实现的——节流处理和数据请求可以看我上一篇文章——这里只实现洗车店列表

这个请求函数不实现

(1)接口地址

  • url
  • url地址中的:cate_id是动态参数,表示分类的id (2)请求方式
  • GET请求 (3)
  • _page表示请求第几页的数据
  • _limit表示每页请求几条数据

洗车店例表数据实现效果图:

请添加图片描述

在wxml中编写

在这里插入图片描述

!--pages/car_service/car_service.wxml-->
<view class="shop-item" wx:for="{{shopList}}" wx:key="id"><view class="thumb"><image src="{{item.icon}}"></image></view><view class="info"><text class="shop-title">店名:{{item.name}}</text><text>电话:{{item.phone}}</text> <text>地址:{{item.adress}}</text> </view></view>

在js中编写假数据——黑马的url有效但是没有数据所有导致,只能这样

在这里插入图片描述

代码如下:

/*** 页面的初始数据*/data: {qurey:{},shopList:[{'id':'1','name':'洗车店1','phone':'12345679','adress':'世界上的某一个地方','icon':'/images/car_png/car_service1.jpg'},{'id':'2','name':'洗车店2','phone':'12345678','adress':'世界上的某一个地方','icon':'/images/car_png/car_service2.jpg'},{'id':'3','name':'洗车店3','phone':'12345679','adress':'世界上的某一个地方','icon':'/images/car_png/car_service1.jpg'},{'id':'4','name':'洗车店4','phone':'12345678','adress':'世界上的某一个地方','icon':'/images/car_png/car_service2.jpg'},{'id':'5','name':'洗车店5','phone':'12345679','adress':'世界上的某一个地方','icon':'/images/car_png/car_service1.jpg'},{'id':'6','name':'洗车店6','phone':'12345678','adress':'世界上的某一个地方','icon':'/images/car_png/car_service2.jpg'},{'id':'7','name':'洗车店7','phone':'12345679','adress':'世界上的某一个地方','icon':'/images/car_png/car_service1.jpg'},{'id':'8','name':'洗车店8','phone':'12345678','adress':'世界上的某一个地方','icon':'/images/car_png/car_service2.jpg'},{'id':'9','name':'洗车店9','phone':'12345679','adress':'世界上的某一个地方','icon':'/images/car_png/car_service1.jpg'},{'id':'10','name':'洗车店10','phone':'12345678','adress':'世界上的某一个地方','icon':'/images/car_png/car_service2.jpg'}],page:1,pageSize:10,total:0,

在wxss中编写样式:

/* pages/car_service/car_service.wxss */
.shop-item{display: flex;padding: 15rpx;border: 1rpx solid #efefef;margin:15rpx;border-radius: 8rpx;box-shadow: 1rpx 1rpx 15rpx #ddd;}
.thumb image{width: 250rpx;height: 250rpx;display:block;font-size:24rpx;margin-right: 15rpx;}.shop-title{font-weight: bold;
}.info{display: flex;flex-direction: column;justify-content: space-around;
}

判断数据是否加载完成——代码样式——调用wx.showToast( Object object)

判断公式:page*pageSize>=( 大于等于)total

 /*** 页面上拉触底事件的处理函数*/onReachBottom: function () {//判断是否在加载数据ifthis.data.page*this.data.pageSize>=this.data.total){//证明没有下一个数据return wx.showToast({title:"数据加载完毕!"icon:"none"})}//页码值加+1this.setData({page:this.data.page+1})this.getSopList()//数据请求函数},

下拉刷新——onPullDownRefresh函数中实现
(1)//需要重置的数据
(2)//重新发起请求
(3)下拉刷新关闭加载版面——在函数wx.stopPullDownRefresh()

注:在上拉加载的时候不需要关闭——在下拉刷新的时候才需要关闭加载面板——通过回调函数来实现,——在onPullDownRefresh函数中传递一个回调函数

使用wxs处理手机号


http://www.ppmy.cn/devtools/4060.html

相关文章

开发日志2024-04-12

开发日志2024/04/12 1、分店月业绩和年业绩都需要添加为真实数据 **开发思路&#xff1a;**分店下所属的技师的业绩总和 代码实现&#xff1a; 前端 无 后端 //TODO 将技师多对应的积分累加到他所属的分店的月/年累计业绩销量中//TODO 查询技师所对应的分店地址String f…

正则表达式(1)

文章目录 专栏导读1、match2、匹配目标3、通用匹配4、常用匹配规则表格 专栏导读 ✍ 作者简介&#xff1a;i阿极&#xff0c;CSDN 数据分析领域优质创作者&#xff0c;专注于分享python数据分析领域知识。 ✍ 本文录入于《python网络爬虫实战教学》&#xff0c;本专栏针对大学生…

Jmeter redis连接测试

Jmeter连接redis获取数据&#xff0c;一直连不上报错。最后只能通过java代码连接测试&#xff0c;最后只能自己动手。 import redis.clients.jedis.*;import java.io.IOException; import java.util.HashSet; import java.util.Set;/*** 单机版的Jedis连接池的用法*/ public c…

React-RTK

​&#x1f308;个人主页&#xff1a;前端青山 &#x1f525;系列专栏&#xff1a;React篇 &#x1f516;人终将被年少不可得之物困其一生 依旧青山,本期给大家带来React篇专栏内容:React-RTK 目录 1、介绍 2、安装 3、编写RTK使用示例 4、官方提供项目包示例 创建 Redux …

使用【node】创建本地接口

在前端开发的过程中&#xff0c;接口相关的信息一般是由后端处理好返回给前端&#xff0c;但是有时候后端不在的时候想自己写个接口进行测试是非常麻烦的。 node是前端一个不错的写接口工具 一 初始化文件 1 在新建一个空的文件夹node 进入空文件夹在&#xff0c;文件夹的地…

每日两题 / 15. 三数之和 73. 矩阵置零(LeetCode热题100)

15. 三数之和 - 力扣&#xff08;LeetCode&#xff09; 先确定一个数t&#xff0c;对于剩下的两个数&#xff0c;要求两数之和为t的负数 三数之和就退化成了两数之和&#xff0c;两数之和可以用双指针 先排序&#xff0c;左右两个指针&#xff0c;指向的数之和大于目标值&…

mysql多表查询

目录 多表关系 一对多&#xff08;多对一&#xff09; 多对多 一对一 多表查询概述 什么是多表查询 例子&#xff1a; 多表查询的分类&#xff1a; 连接查询&#xff1a; 子查询&#xff1a; 内连接 内连接查询语法&#xff1a; 隐式内连接&#xff1a; 显示内连…

linux对网络的监控操作学习--端口、流量、IP

文章目录 linux对网络的监控操作学习--端口、流量、IP理解Netfilter队列设置iptables规则以使用队列使用用户空间程序处理队列中的数据包linux用户空间使用Python实现使用rust实现功能 综合应用注意事项其他实现方式nftablesfirewalldufw (Uncomplicated Firewall)tc (Traffic …