123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- /**
- * @param title String,提示的内容
- * @param duration String,提示的延迟时间,单位毫秒,默认:1500
- * @param mask Boolean,是否显示透明蒙层,防止触摸穿透,默认:false
- * @param icon String,图标:success、error、fail、exception、loading、none,默认:none
- **/
- export function createMessage(title, duration = 1500, mask = false, icon = "none") {
- uni.showToast({
- title,
- duration: duration,
- mask,
- icon
- });
- }
- /**
- * @param url String,请求的地址,默认:none
- * @param data Object,请求的参数,默认:{}
- * @param method String,请求的方式,默认:GET
- * @param loading Boolean,是否需要loading ,默认:false
- * @param header Object,headers,默认:{}
- * @returns promise
- **/
- export function createRequest(url, data = {}, loading = false, method = 'GET', header = {}) {
- if (loading) {
- uni.showLoading({
- title: '请稍后',
- mask: true
- })
- }
- return new Promise((resolve, reject) => {
- uni.request({
- url: url,
- method: method,
- data: data,
- header: header,
- success: res => {
- if (res.statusCode === 200) {
- resolve(res.data)
- } else {
- if (res.data.msg) {
- const str = typeof res.data.resolve === 'string' ? ',' + res.data.resolve :
- ''
- createMessage(res.data.msg + str)
- }
- throw new Error('请求错误' + url)
- reject()
- }
- },
- fail: (err) => {
- reject(err)
- },
- complete: () => {
- uni.hideLoading();
- }
- });
- })
- }
- /**
- * 数据格式化
- * @param obj Object,响应的数据
- * @param type Number 0 | 1,处理类型
- * @returns Object {address = string, name = string, location = {lon, lat }, infomation = {}}
- */
- export function formatterAdressLocation(obj, type) {
- switch (type) {
- case 1:
- return {
- address: obj.formatted_address,
- name: '',
- location: obj.location,
- infomation: obj.addressComponent
- }
- break;
- case 2:
- const [lon, lat] = obj.lonlat.split(',')
- return {
- address: obj.address,
- name: obj.name,
- location: {
- lon,
- lat
- },
- infomation: obj
- }
- break
- case 3:
- return {
- address: obj.location.keyWord,
- name: '',
- location: {
- lon: obj.location.lon,
- lat: obj.location.lat,
- },
- infomation: obj.location
- }
- default:
- break;
- }
- }
- export default {
- createMessage,
- createRequest,
- formatterAdressLocation
- }
|