Taro 调用 API 与本地存储
在 Taro 中,你可以像在微信小程序中一样,调用各种内置 API,例如发起网络请求、获取设备信息、操作本地存储等。本章将带你了解如何使用 Taro 提供的 API,并通过具体示例掌握基本用法,帮助你更好地与系统能力或后端服务进行交互。
Taro API 简介
Taro 对原生小程序 API 做了统一封装,提供了一套跨平台的 API 接口。你可以通过 import Taro from '@tarojs/taro'
引入 Taro 核心对象,然后调用其方法,例如:
import Taro from '@tarojs/taro'
Taro.getSystemInfo().then(res => {
console.log(res)
})
API 通常都返回一个 Promise,使得异步操作更符合现代开发习惯。
网络请求:Taro.request
最常用的 API 之一就是发起网络请求。Taro 提供的 Taro.request
方法类似于浏览器的 fetch
或小程序的 wx.request
,支持各种请求方法。
示例:GET 请求
import Taro from '@tarojs/taro'
Taro.request({
url: 'https://api.example.com/user',
method: 'GET',
data: {
id: 123
}
}).then(res => {
console.log('用户信息:', res.data)
})
示例:POST 请求
Taro.request({
url: 'https://api.example.com/login',
method: 'POST',
data: {
username: 'test',
password: '123456'
},
header: {
'content-type': 'application/json'
}
}).then(res => {
console.log('登录结果:', res.data)
})
错误处理
你可以使用 try...catch
或 catch
语句对请求失败进行处理:
try {
const res = await Taro.request({ url: '...' })
console.log(res)
} catch (err) {
Taro.showToast({
title: '请求失败',
icon: 'none'
})
}
常用 API 示例
除了请求接口,你还会经常用到以下 Taro API:
获取系统信息
Taro.getSystemInfo().then(res => {
console.log('设备信息:', res)
})
获取当前定位
Taro.getLocation({ type: 'wgs84' }).then(res => {
console.log('经纬度:', res.latitude, res.longitude)
})
显示消息提示
Taro.showToast({
title: '操作成功',
icon: 'success',
duration: 2000
})