wx对象发送ajax请求
[if !supportLists]1、[endif]wx.request() 发送请求
注意:小程序实际使用中,请求的接口必须都是已经配置过的接口。开发阶段,可以直接设置“不校验合法域名”,暂不配置。
wx.request({
// 请求接口地址
url: 'https://www.bingjs.com:8002/Section/GetSections',
// 请求参数
data:{},
// 请求方式GET/POST
method:"GET",
// 请求成功后的回调
success:({data})=>{
resolve(data)
},
// 请求完成后的回调
complete:()=>{
console.log('请求完成');
}
})
[if !supportLists]2、[endif]封装ajax请求方法
(1)定义请求方法
export let $request = (url,data={},method='GET')=>{
return new Promise((resolve)=>{
wx.request({
url,
data,
method,
success:({data})=>{
resolve(data)
},
})
})
}
(2)定义get请求方法
export let $get = (url,data={})=>{
return $request(url,data,'GET')
}
(3)定义post请求方法
export let $post = (url,data={})=>{
return $request(url,data,'POST')
}
[if !supportLists]七、[endif]格式化时间
[if !supportLists]1、[endif]在后台对数据里的时间戳进行处理
let data= await wx.$get('Subject/GetSubjects',{section_id:id})
data = data.map(r=>{
return {
Title: r.Title,
Section: r.Section,
Createtime: wx.$formatTime(new Date(parseInt(r.Createtime)))
}
})
[if !supportLists]2、[endif]WXS
WXS(WeiXin Script)是小程序的一套脚本语言,结合 WXML,可以构建出页面的结构。
在wxml页面中,只能在插值{{ }}中写简单的js表达式,而不能调用方法。wxs就是为了能在页面中使用js而存在的。
[if !supportLists](1)[endif]语法
① 变量必须使用var声明,不支持const或者let。
② 不支持箭头函数。
③ 不可以使用模板字符串,字符串连接用+ 。
④ 每一个 .wxs 文件和 <wxs> 标签都是一个单独的模块。每个模块都有自己独立的作用域。
通过module.exports导出内部的私有变量与函数。
⑤ <wxs> 标签中,module属性值定义标签的模块名;src属性值引入.wxs文件的相对路径。
⑥ 生成date对象使用 getDate(),返回一个当前时间的对象。不使用new Date()。
(2)编写在wxml文件中的 标签内
<wxs module="tools">
var formatTime = function(date) {
date = getDate(parseInt(date))
var year = date.getFullYear()
var month = date.getMonth() + 1
var day = date.getDate()
var hour = date.getHours()
var minute = date.getMinutes()
var second = date.getSeconds()
return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
}
var formatNumber =function(n) {
n = n.toString()
return n[1] ? n : '0' + n
}
module.exports = {
formatTime:formatTime
}
</wxs>
<!-- 在模板中,对时间数据进行处理 -->
<view>{{tools.formatTime(item.Createtime)}}</view>
(3)编写在wxs文件中,再导入wxml文件
<!-- 导入wxs文件 -->
<wxs module="tools" src="../../wxs/filter.wxs"></wxs>
<!-- 在模板中,对时间数据进行处理 -->
<view>{{tools.formatTime(item.Createtime)}}</view>