uni-app常用API

一、request请求
1、语法格式:uni.request(OBJECT)
uni.request({
            url: '',   //服务器接口地址
            data:  object , //请求的参数
            header: '', //设置请求的 header
            method: 'GET', //请求方式,必须是大写
            dataType:'参数类型',   //建议设置为json格式
            responseType:'响应数据的类型',
            success: (res)=>{} , //服务器成功返回的回调函数 ,参数res是服务器响应的数据
            fail: (err)=>{}  //接口调用失败的回调函数  ,参数err是失败的信息
})
2、二次封装

(1)在App.vue文件中定义接口的基础地址

globalData:{ //全局数据
	BASE_URL: 'https://diancan.glbuys.com/api', //服务器地址
	HEADER : { 'content-type': 'application/x-www-form-urlencoded' }  //请求头信息
}

(2)创建utils\api.js

export const httpRequest = (options)=>{
	return new Promise((resolve,reject)=>{
		uni.request({
			url:getApp().globalData.BASE_URL + options.url, //在基础地址后拼接接口地址
			method:options.method || 'GET', //设置请求方式,默认为GET
		        header:getApp().globalData.HEADER, //设置请求头
			data: options.data || { }, //设置请求参数,默认为空对象
			dataType:'json', //设置请求参数的格式
			success: (res) => { //请求成功,由resolve返回响应数据
				resolve(res)
			},
			fail: (err) => { //请求失败,由reject返回失败信息
				reject(err)
			}
		})
	})
}
强调:
在App.vue文件中的globalData全局数据的获取方式:getApp() .globalData.全局变量名

(3)在main.js文件中,配置全局的api

import { httpRequest } from './utils/api.js'
Vue.prototype.$api = httpRequest

(4)在页面中使用:

export default {
		data() {
			return {
				shopInfo: [ ]
			}
		},
		onLoad() {
			this.getStuInfo()
		},
		methods: {
			async getStuInfo() {
				let data = {
					page: 1,  //页码
					lng: 113.123762,  //经度
					lat: 39.836312  //纬度
				}
				const result = await this.$api({
					url: '/v1/business/shop',
					data
				})
				this.shopInfo = result.data.data
				console.log(result.data.data);
			}
		}
	}
二、从本地选择文件
语法格式:uni.chooseFile(OBJECT)
uni.chooseFile({
        count: 最多可选择的文件数量,
        type: '所选的文件的类型',
        sourceType: ['album','camera'],
        success: ()=>{ },
        fail:()=>{ }
})
三、从本地相册选择图片或使用相机拍照:
1、选择图片:uni.chooseImage(OBJECT)
uni.chooseImage({
	count: 6, //最多可以选择的图片张数,默认9
	sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
	sourceType: ['album'], //album 从相册选图,camera 使用相机,默认二者都有
	success: function (res) {   //成功则返回图片的本地文件路径列表 tempFilePaths
		console.log(JSON.stringify(res.tempFilePaths));
	}
});

2、预览图片:uni.previewImage(OBJECT)

uni.chooseImage({
	count: 6,   //最多选择的图片个数,默认是9
	sizeType: ['original', 'compressed'], //original表示原图,compressed表示压缩图
	sourceType: ['album','camera'], //album 从相册选图,camera 使用相机
	success: function(res) {
		uni.previewImage({  // 预览图片
			urls: res.tempFilePaths, //需要预览的图片链接列表
			longPressActions: {   //长按图片显示操作菜单,如不填默认为保存相册
				itemList: ['发送给朋友', '保存图片', '收藏'], //操作菜单项
				success: function(data) {
				console.log('选中了第' + (data.tapIndex + 1) + '个按钮,第' + (data.index + 1) + '张图片');
				},
				fail: function(err) {
					console.log(err.errMsg);
				}
			}
		});
	}
});
四、文件上传:uni.uploadFile(OBJECT)
uni.uploadFile({
        url:‘服务器 url’,  //上传文件服务器的地址,必须的参数
        files: '需要上传的文件列表',//可以上传多个文件
        fileType:'文件类型',//上传文件的类型。例如图片文件:image/png
        file: '要上传的文件对象',//类似于input的type=file
        filePath: '要上传文件资源的路径',
        formData: 'HTTP 请求中其他额外的 form data',
        success:()=>{ },
        fail:()=>{ }
})
五、文件下载:uni.downloadFile(OBJECT)
const downloadTask = uni.downloadFile({
	url: 'http://www.example.com/file/test', //仅为示例,并非真实的资源
	success: (res) => {
		if (res.statusCode === 200) {
			console.log('下载成功');
		}
	}
});
downloadTask.onProgressUpdate((res) => {
	console.log('下载进度' + res.progress);
	console.log('已经下载的数据长度' + res.totalBytesWritten);
	console.log('预期需要下载的数据总长度' + res.totalBytesExpectedToWrite);

	// 满足测试条件,取消下载任务。
	if (res.progress > 50) {
		downloadTask.abort();
	}
});

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: uni-app-template是一款基于uni-app框架建立的通用模板,可以为开发者提供一个基础的项目结构和功能模块,减少开发的时间和工作量。 该模板的优势在于跨平台性能良好,支持同时开发多个平台的应用程序,并且可以达到近乎原生的用户体验。 在使用uni-app-template时,开发者可以选择不同的开发方式,如HBuilder X、VS Code等,也可以选择不同的UI框架和组件库进行二次开发。该模板还提供了常用API,如ajax、storage、toast、loading等,方便开发者快速构建应用界面。 总之,uni-app-template是一款十分实用的通用模板,开发者可以通过基于此模板的项目,快速开发出高性能、跨平台的应用程序。 ### 回答2: uni-app-template是一个能够快速构建uni-app项目的通用模板。uni-app是一款跨平台开发框架,可以将一份代码同时转化为多个平台的应用程序,如微信小程序、App Store和Google Play应用商店,以及各种移动设备。 uni-app-template的特点主要体现在以下几个方面: 1.简单易用 uni-app-template是一个基于uni-app的通用模板,具有简单易用的特点,可以轻松构建平台适配性高、UI风格统一的app。 2.多平台适配 uni-app-template支持多种平台适配,不仅可以生成微信小程序应用,还可以生成iOS和Android应用,无需重新编写代码。因此,采用uni-app-template开发应用程序可以大大提高开发效率和代码复用率。 3.模块化开发 模板支持应用程序的模块化开发,可以将功能实现的代码封装在一个模块中,方便开发者进行管理和维护,并提高代码的可重用性和可维护性。 4.灵活配置 uni-app-template支持灵活配置,可以根据不同的需求选择不同的UI组件、主题颜色、字体、字号等参数,还可以根据具体平台的特点进行适配。 总之,uni-app-template是一个开发者在uni-app框架下快速构建多端应用程序的好选择。借助它,可以迅速构建高效、稳定、具备多端适配能力的app,大大提高开发效率和使用体验。 ### 回答3: Uni-app-template是一种用于uni-app框架的通用模板。uni-app是最近非常受欢迎的移动端应用开发框架,它可以一次编写,多端发布,不仅能够开发微信小程序,还可以开发iOS和安卓应用,还支持H5。 Uni-app-template能够提供一个通用的模板,以便开发者更加高效地完成开发工作。这个模板内置了一些常用的功能,例如页面布局,样式设置,组件引用等。开发者在使用这个模板时,可以根据自己的需要,逐步添加或修改代码,来实现自己的功能。 Uni-app-template中已经内置了很多通用的组件,例如tab栏、navbar、搜索栏等,这些组件可供开发者直接使用,以减少重复开发的工作量。 此外,Uni-app-template还内置了一些常用的插件,例如uni-ui(一个类似于Element UI的移动端UI组件库)、uview(一个为uni-app量身定制的UI库)等,这些插件可以帮助开发者更简单地进行开发工作。 Uni-app-template的另一个优点是它的兼容性。一旦应用开发完成,它将能够直接在各个平台上运行,包括微信小程序、iOS和安卓应用,以及H5网页应用。由于Uni-app框架和Uni-app-template具有良好的兼容性,使得开发者的工作更加高效和简单。 总之,Uni-app-template是一个非常实用和方便的开发工具,它能够帮助开发者更加快速、高效地完成应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

上庸者-不服周

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值