ajax请求和封装、格式化时间

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>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容