From 6766e0658ab3055d145eec67822c3b75f28e8fe1 Mon Sep 17 00:00:00 2001 From: yanyilin Date: Mon, 24 Apr 2023 22:54:30 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84uts=E6=8F=92=E4=BB=B6?= =?UTF-8?q?=E8=B0=83=E7=94=A8uni=20api=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/plugin/uts-uni-api.md | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/docs/plugin/uts-uni-api.md b/docs/plugin/uts-uni-api.md index c2796f312..4b3495d87 100644 --- a/docs/plugin/uts-uni-api.md +++ b/docs/plugin/uts-uni-api.md @@ -22,12 +22,23 @@ export function myToast() { ## 注意事项 ### 异步API中complete回调函数中的参数是any类型 在uts中,由于不支持联合类型,complete回调函数的参数会当做any类型处理。 -any类型对象不能直接使用“.”访问其属性,目前暂时可以使用JSON.stringify()转换为字符串处理。 +any类型对象不能直接使用“.”访问其属性,目前暂时可以使用JSON.stringify()转换为字符串处理,或者在success和fail回调中分别处理成功和失败的数据。 +此问题仅在complete回调函数中存在,success和fail回调函数中可以使用“.”访问参数的属性。 如下示例: ```ts export function myTest() { uni.request({ url: 'https://www.invalidserviceaddress.com/', + success: (ret) => { + //ret为RequestSuccess类型,可以使用.访问其属性 + let data = ret.data; + console.log('uni.request successed: ', data); + }, + fail: (err) => { + //err为RequestFail类型,可以使用.访问其属性 + let code = err.errCode; + console.log('uni.request failed: ', code); + }, complete: (res) => { //res为any类型,转换为字符串处理 let ret = JSON.stringify(res); @@ -37,6 +48,22 @@ export function myTest() { } ``` +如果在complete回调函数中使用“.”访问属性,如下示例: +```ts + uni.request({ + url: 'https://www.invalidserviceaddress.com/', + complete: (res) => { + console.log(res.errCode); + } + }); + +``` +编译时会报错: +``` +error: Unresolved reference: errCode‌ +``` + + ## 支持的API列表 ### 网络 @@ -57,6 +84,7 @@ export function myTest() { ### 设备 - 系统 + + [uni.getAppBaseInfo()](https://uniapp.dcloud.net.cn/api/system/getAppBaseInfo.html) + [uni.getDeviceInfo()](https://uniapp.dcloud.net.cn/api/system/getDeviceInfo.html) + [uni.getSystemSetting()](https://uniapp.dcloud.net.cn/api/system/getsystemsetting.html) @@ -68,3 +96,5 @@ export function myTest() { + [uni.hideLoading()](https://uniapp.dcloud.net.cn/api/ui/prompt.html#hideloading) + [uni.showModal(OBJECT)](https://uniapp.dcloud.net.cn/api/ui/prompt.html#showmodal) + [uni.showActionSheet(OBJECT)](https://uniapp.dcloud.net.cn/api/ui/prompt.html#showactionsheet) + +**目前仅支持以上列出的部分uni api的调用,[uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html)实现的api(如[uni.getBatteryInfo](https://ext.dcloud.net.cn/plugin?id=9295))暂时还不支持在uts插件中调用** -- GitLab