【微信小程序开发(从零到一)】——个人中心页面的实战项目(二)

在这里插入图片描述


👨‍💻个人主页:@开发者-曼亿点

👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!

👨‍💻 本文由 曼亿点 原创

👨‍💻 收录于专栏:微信小程序开发

🅰


个人中心运行展示视频


文章目录

    • 🅰
    • 前言
    • 🎶 一、订单物流查询
    • 🎶 二、选择收货地址查询
    • 🎶 三、客服联系电话
        • 结束语🥇


前言

  个人中心案例设计了两个标签页面,“首页”展示个人的基本信息及简单的自我介绍。图一所示:“个人中心”展示个人资料、订单物流查询、选择收货地址、客服联系方式等功能。页面效果图二所示:

图一:
在这里插入图片描述
图二:
在这里插入图片描述

  “首页”与’个人中心”页面时标签之间的跳转。点击”首页“中头像上方提示语”点击跳转“,即可以跳转到”个人中心“页面,当然底部标签页面也可以实现页面的跳转。


🎶 一、订单物流查询


  在”个人中心“页面单击”订单物流查询“跳转到”订单查询“页面,可以选择快递公司,输入运单号,点击”查询“按钮,在页面下展示物流信息。下面编写代码实现订单查阅功能。
pages/person/person.wxml文件中,编写“订单物流查询”绑定oreder()函数,具体代码如下:

<view bindtap="order"> 
订单物流查询
<image class="arrow"src="/images/arrow.png"></image>
</view>

  进入pages/person/person.js文件中,增加oreder()函数,实现跳转,具体代码如下:

order:function(e){wx.navigateTo({url: '/pages/order/order',})},

  完成上面几部分的代码后,将进入订单物流查询pages/order/order.wxml文件,给”查询“按钮绑定search()函数,设计”订单查询“页面布局,具体代码如下:

<!--pages/order/order.wxml-->
<view class="container">
<view class="title">欢迎进入快递查询系统</view>
<view class="section">
<view class="title">请选择快递公司:</view>
<picker class="input" bindchange="companyInput" value="{{index}}" range="{{com}}">
<view>{{com[index]}}</view>
</picker>
</view>
<view class="section">
<view class="title">运单号:</view>
<input class="input" type="number" bindinput="noIput" placeholder="请输入运输单号"/>
</view>
<button type="primary" bindtap="search">查询</button>
<scroll-view scroll-y class="orderlist">
<view wx:for="{{expressInfo.result.list}}" wx:key=" *this">
<text>{{item.datetime}}</text>{{item.remark}}
</view>
</scroll-view>
</view>

  上述代码中,在“订单查询“页面,添加了快递公司名称、运单号两个输入框。另外一个查询按钮。输入信息,单击按钮进行1信息查询。

  进入pages/order/order.js文件,调用接口获取数据并在页面展示数据,具体代码如下:

  data: {
no:null,
company:['sf','sto','yt','yd','tt'],
com:['顺丰','申通','圆通','韵达','天天'],
index:0,
expressInfo:null,},search:function(){
wx.showLoading({title: '加载中',
})

  接着在pages/order/order.wxml文件中,编写样式代码,具体如下:

/* pages/order/order.wxss */
.container{padding: 20rpx;
}
.container>.title{text-align: center;
}
button{width: 300rpx;height: 80rpx;line-height: 80rpx;margin: 30rpx auto;
}.section{width: 100%;box-sizing: border-box;margin-top: 80rpx;overflow: hidden;
}
.section>.title{width: 20%;float: left;font-size: 28rpx;text-align: right;
line-height: 42rpx;
}
.section>.input{border: 1px solid gainsboro;width: 70%;padding: 5rpx 10rpx;float: right;
font-size: 32rpx;
}
.orderlist{height: 300px;
}
.orderlist view{border-bottom: 1px solid #efefef;font-size: 32rpx;padding: 10rpx 0;
}
.orderlist text{color: red;font-size: 28rpx;
}

  还可以在pages/order/order.json文件中修改导航栏标题,代码如下:

{"usingComponents": {},"navigationBarTitleText": "物流信息"
}

🎶 二、选择收货地址查询


  在”个人中心“页面,点击”选择收货地址“,跳转到,”收货地址“页面,进入页面后默认没有数据信息,点击页面下方”获取收货地址“,进入收货地址原生页面。用户授权后,选取通讯录地址或者填写新增地址后,返回”收货地址页面“,展现地址数据信息。这里需要绑定wx.chooseAddress()函数调出用户编辑收货地址原生界面,并在编辑完成后返回用户选择的地址信息,具体操作如下:
  在pages/person/person.wxml文件,给”选择收货地址“绑定address()函数,具体代码如下:

<view bindtap="address">
选择获取地址
<image class="arrow"src="/images/arrow.png"></image>
</view>

  接下来pages/person/person.js文件,增加address()函数,具体代码如下:

  address:function(){wx.navigateTo({url: '/pages/address/address',})},

  执行完上面代码后,此时进入”收货地址“页面,该页面包括收货人的姓名、邮编、地区、收货地址、国家码、手机号等信息。因此在pages/address/address.wxml文件,设计”收货地址“页面,具体代码如下:

<!--pages/address/address.wxml-->
<view class="list"> 
<view>
<view class="head">收货人姓名</view>
<view class="body">{{addressInfo.userName}}</view>
</view>
<view><view class="head">邮编</view>
<view class="body">{{addressInfo.postalCode}}</view>
</view>
<view><view class="head">地区</view>
<view class="body">{{addressInfo.provinceName}} {{addressInfo.cityName}}{{addressInfo.countyName}}</view>
</view>
<view><view class="head">收货地址</view>
<view class="body">{{addressInfo.detailInfo}}</view>
</view>
<view><view class="head">国家码</view>
<view class="body">{{addressInfo.nationalCode}}</view>
</view>
<view><view class="head">手机号码</view>
<view class="body">{{addressInfo.telNumber}}</view>
</view>
</view>
<view class="add" bindtap="chooseAddress">
<image class="left" src="/images/6.png" mode="widthFix"></image>
<view class="text">获取收货地址</view>
<image class="right" src="/images/right.png" mode="widthFix"></image>
</view>

  然后再pages/address/address.js文件,添加chooseAddress()函数,调用wx.chooseAddress收货地址API,获取数据,渲染页面,具体代码如下:

data: {addressInfo:null},
chooseAddress(){wx.chooseAddress({success:res=>{this.setData({addressInfo:res})},fail:err=>{console.log(err)}})
},

  接着在pages/address/address.wxss文件中,编写样式代码,具体如下:

/* pages/address/address.wxss */
page{background-color: #f6f6f6;font-family: "微软雅黑";font-size: 30rpx;color: #353535;
}
.list{font-size: 36rpx;
}
.list>view{background-color: #fff;padding: 20rpx;border-bottom: 1rpx solid #e0e0e0;display: flex;
}
.list.head{width: 210rpx;
}
.list.body{flex: 1;
}
.add{width: 100%;background-color: #fff;position: absolute;bottom: 0;padding: 15rpx 15rpx 30rpx 40rpx;border-top: 1rpx solid #e0e0e0;
}
.add>image{width: 50rpx;margin-top: 15rpx;margin-right: 20rpx;
}
.add>.list{float: left;
}
.add>.right{width: 25rpx;float: right;margin-right: 60rpx;padding-top: 15rpx;color: #e0e0e0;
}
.add>.text{float: left;margin-top: 20rpx;
}

🎶 三、客服联系电话


  在”个人中心“页面,点击”客服联系方式“一栏,绑定拨打电话事件,调用拨打电话API(wx.makePhoneCall),页面底部上滑下呼叫或取消操作。具体操作如下:
在pages/person/person.wxml文件,为”客服联系方式“,一栏绑定contact()函数,具体代码如下:

<view bindtap="contact">
客服联系方式
<image class="arrow"src="/images/arrow.png"></image>
</view>

  接着在pages/person/person.js文件,增加contact函数,具体代码如下:

 contact:function(e){
wx.makePhoneCall({phoneNumber: '17570463544',
})},
结束语🥇

以上就是微信小程序之列表渲染
持续更新微信小程序教程,欢迎大家订阅系列专栏🔥微信小程序
你们的支持就是曼亿点创作的动力💖💖💖
请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/25746.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VS2022+Qt雕刻机单片机马达串口上位机控制系统

程序示例精选 VS2022Qt雕刻机单片机马达串口上位机控制系统 如需安装运行环境或远程调试&#xff0c;见文章底部个人QQ名片&#xff0c;由专业技术人员远程协助&#xff01; 前言 这篇博客针对《VS2022Qt雕刻机单片机马达串口上位机控制系统》编写代码&#xff0c;代码整洁&a…

C#面:阐述对DDD的理解

C#是一种面向对象的编程语言&#xff0c;而领域驱动设计&#xff08;Domain-Driven Design&#xff0c;简称DDD&#xff09;是一种软件开发方法论&#xff0c;它强调将业务领域的知识和逻辑直接融入到软件设计和开发中。 在C#中实施DDD的关键是将业务领域划分为不同的领域模型…

PHP“well”运动健身APP-计算机毕业设计源码87702

【摘要】 随着互联网的趋势的到来&#xff0c;各行各业都在考虑利用互联网将自己的信息推广出去&#xff0c;最好方式就是建立自己的平台信息&#xff0c;并对其进行管理&#xff0c;随着现在智能手机的普及&#xff0c;人们对于智能手机里面的应用“well”运动健身app也在不断…

vue中插槽的本质

定义slotCompoent.vue 组件 <template><slot></slot><slot nameslot1></slot><slot name"slot2" msg"hello"></slot> </template>使用组件&#xff1a; <slotComponent><p>默认的</p>…

gcc:coverage:gcda文件没有生成的另一个例子:dlopen

根据gcc的文档&#xff0c; 如果是使用dlopen的方式来打开一个函数&#xff0c;需要记录coverage的数据&#xff0c;就需要使用下面这个链接。 If an executable loads a dynamic shared object via dlopen functionality, ‘-Wl,–dynamic-list-data’ is needed to dump all …

【系统架构】架构演进

系列文章目录 第一章 系统架构的演进 本篇文章目录 系列文章目录前言一、原始分布式二、单体系统时代三、SOA时代烟囱架构微内核架构事件驱动架构 四、微服务架构五、后微服务时代六、无服务时代总结 前言 最近笔者一直在学习系统架构的相关知识&#xff0c;对系统架构的演进…

6.7 作业

搭建一个货币的场景&#xff0c;创建一个名为 RMB 的类&#xff0c;该类具有整型私有成员变量 yuan&#xff08;元&#xff09;、jiao&#xff08;角&#xff09;和 fen&#xff08;分&#xff09;&#xff0c;并且具有以下功能&#xff1a; (1)重载算术运算符 和 -&#xff…

Day34

Day34 三大范式及反范式设计 第一范式&#xff1a; 存在问题&#xff1a; 1.存在非常严重的数据冗余(重复) 2.数据添加存在问题 3.数据删除存在问题 第二范式&#xff1a; 解决了一部分数据冗余&#xff0c;但仍然存在较严重的数据冗余问题&#xff0c;数据添加和删除问题依然…

Java学习-JDBC(五)

JDBC优化及工具类封装 现有问题 ①创建连接池②获取连接③连接回收 ThreadLocal 为解决多线程程序的并发问题提供了一种新的思路&#xff0c;使用这个工具类可以很简洁地编写出优美的多线程程序&#xff0c;通常用在多线程中管理共享数据库连接、Session等ThreadLocal用于保…

leetcode hot100 补充

除了 hot100 外&#xff0c;还有一些常见的题目&#xff0c;也是值得我们复习的。我们新开一个 补充 栏目&#xff0c;进行梳理。 hot 100补充 回溯法 回溯法 medium 组合之和 II dfs

6.全开源源码---小红书卡片-跳转微信-自动回复跳转卡片-商品卡片-发私信-发群聊-安全导流不封号-企业号白号都可以用

现在用我们的方法&#xff0c;可以规避违规风险&#xff0c;又可以丝滑引流&#xff0c;因为会以笔记的形式发给客户&#xff0c;点击之后直接跳微信&#xff0c;我们来看看演示效果吧&#xff08;没有风险提示&#xff09; 无论是引流还是销售产品都会事半功倍。

关于如何设置 TMOD (定时/计数 高低 共 8 位 寄存器)

TMOD 寄存器简介 TMOD 是 8051 单片机的定时器模式寄存器。它是一个 8 位寄存器&#xff0c;用于配置定时器/计数器的工作模式。TMOD 的每一位有特定的含义。 TMOD 的结构如下&#xff1a; GATE | C/T | M1 | M0 | GATE | C/T | M1 | M07 | 6 | 5 | 4 | 3 | 2 | …

python使用聚类分析来分析数据

""" 聚类分析 """ import os import pandas as pd #导入处理二维表格的库 import numpy as np #导入数值计算的库 from sklearn.preprocessing import StandardScaler #导入数据标准化模块 import matplotlib.pyplot as plt #导入画…

搞懂银行的各类号码 — Account Number, Routing Number 和 Swift Code

1. 前言2. 名词解释 2.1. Debit Card Number 储蓄卡卡号2.2. Account Number 账户号码2.3. Routing Number 路由号码2.4. SWIFT Code SWIFT 号码3. 查找信息 3.1. 支票3.2. 网上银行3.3. 手机银行4. SWFIT Code 4.1. 看懂 SWIFT Code4.2. 询问银行4.3. Google 大神4.4. 部分常用…

MySQL: 表的增删改查(基础)

文章目录 1. 注释2. 新增(Create)3. 查询(Retrieve)3.1 全列查询3.2 指定列查询3.3 查询字段为表达式3.4 别名3.5 去重: distinct3.6 排序: order by3.7条件查询3.8 分页查询 4. 修改 (update)5. 删除(delete)6. 内容重点总结 1. 注释 注释&#xff1a;在SQL中可以使用“–空格…

Day 25 二叉树的终止

450.删除二叉搜索树中的节点 不理解用tmp保存root节点&#xff0c;然后删除&#xff1f;rootroot->right不会覆盖吗&#xff1f; 需要考虑要删除的节点是不是叶子节点&#xff0c;有无左右孩子 有左右孩子的话&#xff0c;需要将左孩子节点移动到右孩子节点的左面节点的左…

了解常用智能指针

智能指针 1、概念 C中引入智能指针的主要目的是为了解决内存管理的问题&#xff0c;传统的指针&#xff08;裸指针&#xff09;在使用时需要手动分配和释放内存&#xff0c;容易出现内存泄漏和悬挂指针等问题。智能指针通过封装裸指针&#xff0c;并提供自动内存管理功能&…

一、Socket创建和连接

C网络编程&#xff08;asio&#xff09; 文章目录 C网络编程&#xff08;asio&#xff09;1、Asio概述2、网络编程基本流程2、创建socket3、创建监听socket4、绑定accpet监听套接字5、连接指定的端点6、服务器接收连接 点击查看代码 1、Asio概述 ​ Asio起源于Boost库&#xf…

shell编程(三)—— 运算符

和其他编程语言一样&#xff0c;bash也有多种类型的运算符&#xff0c;本篇对bash的相关运算符做简单介绍。 一、运算符 1.1 算术运算符 常见的算术运算符&#xff0c;如加&#xff08;&#xff09;、减&#xff08;-&#xff09;、乘&#xff08;*&#xff09;、除&#xf…

OpenGauss数据库-4.表的创建、修改与删除

第1关&#xff1a;创建表 gsql -d postgres -U gaussdb -W passwd123123 create database testdb; \c testdb; passwd123123 create table test_table (test_id integer not null,test_info char(36)); 第2关&#xff1a;修改表 gsql -d testsb -U gaussdb -W passwd123123 …