博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信小程序-查询快递
阅读量:4365 次
发布时间:2019-06-07

本文共 2148 字,大约阅读时间需要 7 分钟。

1、新建快速启动项目

2、在设置里面勾选不校验合法域名,以防编译报错

3、在app.json中改一下窗口表现:app.json—"navigationBarTitleText": "WeChat"改为"navigationBarTitleText": "快递查询"

 显示如下:

4、申请api接口,可登录聚合数据网站上免费申请,其他平台也可

5、在app.js中添加方法 getExpressInfo(发起网络请求来调用申请的接口),两个参数 nu ,cb。nu为要查询的快递单号,cb为返回查找到的内容到data中的方法。

  先在微信公众平台-API复制示例代码

修改代码如下:

data:请求的参数

header:设置请求的header

success: 接口调用成功的回调函数

5、在index.wxml中添加输入框并绑定input方法,添加查询按钮,绑定事件btnClick,使点击按钮会调用app.js中的接口,在下方设置可以滚动显示的组件

<!--index.wxml-->
<view class="container">
<input placeholder="请输入运单号" bindinput='input' />
<!-- bindinput 获取输入的信息 -->
<button type="primary" bindtap="btnClick">查询</button>
<!-- bindtap 绑定点击事件 -->
<scroll-view scroll-y style="height:200px;">
<view wx:for="{
{expressInfo.result.list}}">
{
{item.remark}}||{
{item.datetime}}
</view>
</scroll-view>
</view>

6、添加getUserInfo、btnClick和input函数

//index.js
//获取应用实例
const app = getApp()
// page 注册一个页面
Page({
data: {
motto: 'Hello World',
userInfo: {},
expressNu:null
// hasUserInfo: null,
// canIUse: wx.canIUse('button.open-type.getUserInfo')
},
//事件处理函数
bindViewTap: function() {
wx.navigateTo({
url: '../logs/logs'
})
},
onLoad: function () {
if (app.globalData.userInfo) {
this.setData({
userInfo: app.globalData.userInfo,
hasUserInfo: true
})
} else if (this.data.canIUse){
// 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回
// 所以此处加入 callback 以防止这种情况
app.userInfoReadyCallback = res => {
this.setData({
userInfo: res.userInfo,
hasUserInfo: true
})
}
} else {
// 在没有 open-type=getUserInfo 版本的兼容处理
wx.getUserInfo({
success: res => {
app.globalData.userInfo = res.userInfo
this.setData({
userInfo: res.userInfo,
hasUserInfo: true
})
}
})
}
},
getUserInfo: function(e) {
console.log(e)
app.globalData.userInfo = e.detail.userInfo
this.setData({
userInfo: e.detail.userInfo,
hasUserInfo: true
})
},
btnClick: function () {
var thispage=this;
app.getExpressInfo(this.data.expressNu,function(data){
console.log(data)
thispage.setData({expressInfo:data})
});
},
input: function(e){
this.setData({ expressNu:e.detail.value })
}
})

 

7、添加输入框的样式

/**index.wxss**/input{  border:1px solid gray;  width: 90%;  margin: 5%;  padding:5px;}

 

最后效果:

 

转载于:https://www.cnblogs.com/-xiao/p/10105504.html

你可能感兴趣的文章
C#开发微信门户及应用(35)--微信支付之企业付款封装操作
查看>>
使用触发器订单序列号生成
查看>>
Django进阶高级
查看>>
数据库连接池的原理
查看>>
MyBatis学习总结_18_MyBatis与Hibernate区别
查看>>
十八.模块
查看>>
2017-7-27-关键20小时,快速习得任何技能
查看>>
SHELL日志分析 实例一
查看>>
闭包函数
查看>>
ZOJ Monthly, November 2012 - I - Search in the Wiki
查看>>
TextSwitcher,译为文字转换器控件
查看>>
C# 多线程编程(3):线程池ThreadPool
查看>>
Mac 使用技巧
查看>>
Whu 1603——Minimum Sum——————【单个元素贡献、滑窗】
查看>>
Windows下安装PHP扩展及资源下载地址(memcached为例)
查看>>
Node.js安装与配置 -- 收录
查看>>
hdu 4918
查看>>
队列- 链式存储-Java实现
查看>>
在 Ubuntu 下配置 C/C++ 开发环境【转】
查看>>
前端项目-代码开发规范(个人整理版)
查看>>