From b0eaab56e8862375c58507828c1019310dc2cb9f Mon Sep 17 00:00:00 2001 From: git_robot Date: Fri, 5 Jul 2024 19:28:36 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20utsApiJson.json=E3=80=81ut?= =?UTF-8?q?sComJson.json=E3=80=81utsUnicloudApiJson.json?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/.vuepress/utils/utsApiJson.json | 2 +- docs/.vuepress/utils/utsComJson.json | 2 +- docs/.vuepress/utils/utsUnicloudApiJson.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/.vuepress/utils/utsApiJson.json b/docs/.vuepress/utils/utsApiJson.json index a86e49c7..ac7423ad 100644 --- a/docs/.vuepress/utils/utsApiJson.json +++ b/docs/.vuepress/utils/utsApiJson.json @@ -1 +1 @@ -{"getApp":{"name":"## getApp() @getapp","description":"`getApp()` 函数用于获取当前应用实例,可通过应用实例调用 App.uvue methods 中定义的方法。","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| any |\n \n","compatibility":"### getApp 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/tutorial/page.html#getapp)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.global.get-app)\n"},"get-app":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-app/get-app.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-app/get-app\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { state, setLifeCycleNum } from '@/store/index.uts'\r\n\r\n type MyGlobalData = {\r\n str : string,\r\n num : number,\r\n bool : boolean,\r\n obj : UTSJSONObject,\r\n null : string | null,\r\n arr : number[],\r\n mySet : string[],\r\n myMap : UTSJSONObject,\r\n func : () => string\r\n }\r\n\r\n export default {\r\n data() {\r\n return {\r\n originGlobalData: {\r\n str: '',\r\n num: 0,\r\n bool: false,\r\n obj: {\r\n str: '',\r\n num: 0,\r\n bool: false\r\n } as UTSJSONObject,\r\n null: null,\r\n arr: [] as number[],\r\n mySet: [] as string[],\r\n myMap: {},\r\n func: () : string => ''\r\n } as MyGlobalData,\r\n originGlobalDataFuncRes: '',\r\n newGlobalData: {\r\n str: '',\r\n num: 0,\r\n bool: false,\r\n obj: {\r\n str: '',\r\n num: 0,\r\n bool: false\r\n } as UTSJSONObject,\r\n null: null,\r\n arr: [] as number[],\r\n mySet: [] as string[],\r\n myMap: {},\r\n func: () : string => ''\r\n } as MyGlobalData,\r\n newGlobalDataFuncRes: '',\r\n lifeCycleNum: 0,\r\n }\r\n },\r\n onReady() {\r\n this.lifeCycleNum = state.lifeCycleNum\r\n },\r\n methods: {\r\n getGlobalData() {\r\n const app = getApp()\r\n\r\n this.originGlobalData.str = app.globalData.str\r\n this.originGlobalData.num = app.globalData.num\r\n this.originGlobalData.bool = app.globalData.bool\r\n this.originGlobalData.obj = app.globalData.obj\r\n this.originGlobalData.null = app.globalData.null\r\n this.originGlobalData.arr = app.globalData.arr\r\n app.globalData.mySet.forEach((value : string) => {\r\n this.originGlobalData.mySet.push(value)\r\n })\r\n app.globalData.myMap.forEach((value : any, key : string) => {\r\n this.originGlobalData.myMap[key] = value\r\n })\r\n this.originGlobalData.func = app.globalData.func\r\n this.originGlobalDataFuncRes = this.originGlobalData.func()\r\n },\r\n setGlobalData() {\r\n const app = getApp()\r\n\r\n app.globalData.str = 'new globalData str'\r\n app.globalData.num = 100\r\n app.globalData.bool = true\r\n app.globalData.obj = {\r\n str: 'new globalData obj str',\r\n num: 200,\r\n bool: true\r\n }\r\n app.globalData.null = 'not null'\r\n app.globalData.arr = [1, 2, 3]\r\n app.globalData.mySet = new Set(['a', 'b', 'c'])\r\n app.globalData.myMap = new Map([\r\n ['a', 1],\r\n ['b', 2],\r\n ['c', 3]\r\n ])\r\n app.globalData.func = () : string => {\r\n return 'new globalData func'\r\n }\r\n\r\n this.newGlobalData.str = app.globalData.str\r\n this.newGlobalData.num = app.globalData.num\r\n this.newGlobalData.bool = app.globalData.bool\r\n this.newGlobalData.obj = app.globalData.obj\r\n this.newGlobalData.null = app.globalData.null\r\n this.newGlobalData.arr = app.globalData.arr\r\n app.globalData.mySet.forEach((value : string) => {\r\n this.newGlobalData.mySet.push(value)\r\n })\r\n app.globalData.myMap.forEach((value : any, key : string) => {\r\n this.newGlobalData.myMap[key] = value\r\n })\r\n this.newGlobalData.func = app.globalData.func\r\n this.newGlobalDataFuncRes = this.newGlobalData.func()\r\n },\r\n _increasetLifeCycleNum: function () {\r\n const app = getApp()\r\n app.increasetLifeCycleNum()\r\n this.lifeCycleNum = state.lifeCycleNum\r\n },\r\n // 自动化测试\r\n setLifeCycleNum(num : number) {\r\n setLifeCycleNum(num)\r\n }\r\n },\r\n }\r\n\n```\n:::"},"getCurrentPages":{"name":"## getCurrentPages() @getcurrentpages","description":"`getCurrentPages()` 函数用于获取当前页面栈的实例,以数组形式按栈的顺序给出,数组中的元素为页面实例,第一个元素为首页,最后一个元素为当前页面。","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[Page](#page-values)\\> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| route | string | 是 | - | - | 页面的路由地址 |\n@| options | Map\\ | 是 | - | - | 页面的路由参数信息,目前web端options类型为Object,后续可能会调整 |\n#### Page 的方法 @page-values \n\n#### $getPageStyle() @$getpagestyle\n获取当前页面样式 \\
包含 pages.json 页面下的 style 节点属性和根节点 globalStyle 属性\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) |\n \n\n##### $getPageStyle 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.13 | 4.13 | 4.13 |\n\n\n##### 参见\n- [$getPageStyle](https://doc.dcloud.net.cn/uni-app-x/api/get-current-pages.html#getPageStyle)\n\n#### $setPageStyle(style) @$setpagestyle\n设置当前页面样式 \\
支持 pages.json 页面下的 style 节点属性和根节点 globalStyle 属性\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| style | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) | 是 | - | - | 如果属性名存在,且类型为UTSJSONObject返回对应的结果,不存在返回null | \n\n\n##### $setPageStyle 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.13 | 4.13 | 4.13 |\n\n\n##### 参见\n- [$setPageStyle](https://doc.dcloud.net.cn/uni-app-x/api/get-current-pages.html#setPageStyle)\n \n","compatibility":"### getCurrentPages 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/tutorial/page.html#getcurrentpages)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.global.get-current-pages)\n"},"get-current-pages":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-current-pages/get-current-pages.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-current-pages/get-current-pages\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { PageStyleItem, PageStyleArray } from './page-style.uts';\r\n\r\n class Page {\r\n constructor(public route : string) {\r\n }\r\n }\r\n\r\n export default {\r\n data() {\r\n return {\r\n checked: false,\r\n pages: [] as Page[],\r\n PageStyleArray: PageStyleArray as PageStyleItem[],\r\n currentPageStyle: {} as UTSJSONObject,\r\n }\r\n },\r\n computed: {\r\n pageStyleText() : string {\r\n return JSON.stringify(this.currentPageStyle)\r\n }\r\n },\r\n onLoad() {\r\n this.getPageStyle();\r\n },\r\n onPullDownRefresh() {\r\n setTimeout(() => {\r\n uni.stopPullDownRefresh()\r\n }, 2000)\r\n },\r\n methods: {\r\n startPullDownRefresh() {\r\n uni.startPullDownRefresh()\r\n },\r\n _getCurrentPages: function () {\r\n this.pages.length = 0\r\n const pages = getCurrentPages()\r\n this.pages.push(new Page(pages[0].route))\r\n if (this.pages[0].route.includes('/tabBar/')) {\r\n this.checked = true\r\n }\r\n for (let i = 1; i < pages.length; i++) {\r\n this.pages.push(new Page(pages[i].route))\r\n if (pages[i].route.includes('/tabBar/')) {\r\n this.checked = false\r\n }\r\n }\r\n },\r\n /// get-set-page-style\r\n radioChange(key : string, e : RadioGroupChangeEvent) {\r\n this.setStyleValue(key, e.detail.value);\r\n },\r\n sliderChange(key : string, e : UniSliderChangeEvent) {\r\n this.setStyleValue(key, e.detail.value);\r\n },\r\n switchChange(key : string, e : UniSwitchChangeEvent) {\r\n this.setStyleValue(key, e.detail.value);\r\n },\r\n setStyleValue(key : string, value : any) {\r\n const style = {}\r\n style[key] = value\r\n this.setPageStyle(style)\r\n this.getPageStyle()\r\n },\r\n getPageStyle() : UTSJSONObject {\r\n const pages = getCurrentPages();\r\n const currentPage = pages[pages.length - 1];\r\n this.currentPageStyle = currentPage.$getPageStyle()\r\n return this.currentPageStyle;\r\n },\r\n setPageStyle(style : UTSJSONObject) {\r\n console.log('setPageStyle:', style);\r\n const pages = getCurrentPages();\r\n const currentPage = pages[pages.length - 1];\r\n currentPage.$setPageStyle(style);\r\n },\r\n // getCurrentPage(): Page {\r\n // const pages = getCurrentPages();\r\n // const currentPage = pages[pages.length - 1];\r\n // return currentPage;\r\n // }\r\n },\r\n }\r\n\n```\n:::"},"$on":{"name":"## uni.$on(eventName, callback) @$on","description":"监听自定义事件。事件可以由 uni.$emit 触发。回调函数会接收 uni.$emit 传递的参数。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| eventName | string | 是 | - | - | - |\n| callback | () => void | 是 | - | - | - | \n","returnValue":"","compatibility":"### $on 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [$on](https://doc.dcloud.net.cn/uni-app-x/api/event-bus.html#on)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.event-bus.$on)\n"},"$once":{"name":"## uni.$once(eventName, callback) @$once","description":"监听一个自定义事件。事件只触发一次,在第一次触发之后移除事件监听器。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| eventName | string | 是 | - | - | - |\n| callback | () => void | 是 | - | - | - | \n","returnValue":"","compatibility":"### $once 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [$once](https://doc.dcloud.net.cn/uni-app-x/api/event-bus.html#once)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.event-bus.$once)\n"},"$off":{"name":"## uni.$off(eventName, callback?) @$off","description":"移除自定义事件监听器。如果提供了事件名和回调,则只移除这个回调的监听器。
4.13+ 开始支持第二个参数为可选,如果仅提供事件名,则移除该事件的所有监听器。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| eventName | string | 是 | - | - | - |\n| callback | () => void \\| null | 否 | - | - | | \n","returnValue":"","compatibility":"### $off 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [$off](https://doc.dcloud.net.cn/uni-app-x/api/event-bus.html#off)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.event-bus.$off)\n"},"$emit":{"name":"## uni.$emit(eventName, args?) @$emit","description":"触发自定义事件,附加的参数会传递给事件监听器。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| eventName | string | 是 | - | - | - |\n| args | any \\| null | 否 | - | - | | \n","returnValue":"","compatibility":"### $emit 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [$emit](https://doc.dcloud.net.cn/uni-app-x/api/event-bus.html#emit)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.event-bus.$emit)\n"},"event-bus":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/event-bus/event-bus.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/event-bus/event-bus\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n export default {\r\n data() {\r\n return {\r\n log: [] as string[],\r\n }\r\n },\r\n methods: {\r\n fn(res : string) {\r\n this.log.push(res)\r\n },\n fn2(res : string) {\n this.log.push(res)\n },\r\n on() {\r\n uni.$on('test', this.fn)\r\n },\n on2() {\n uni.$on('test', this.fn2)\n },\r\n once() {\r\n uni.$once('test', this.fn)\r\n },\r\n off() {\r\n uni.$off('test', this.fn)\r\n },\n offAll() {\n uni.$off('test')\n },\r\n emit() {\r\n uni.$emit('test', 'msg:' + Date.now())\r\n },\r\n clear() {\r\n this.log.length = 0\r\n },\r\n },\r\n }\r\n\n```\n:::"},"addInterceptor":{"name":"## uni.addInterceptor(name, interceptor) @addinterceptor","description":"添加拦截器","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| name | string | 是 | - | - | 需要拦截的 API 名称 |\n| interceptor | Interceptor | 是 | - | - | 拦截器 | \n","returnValue":"","compatibility":"### addInterceptor 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.97 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.interceptor.addInterceptor)\n"},"removeInterceptor":{"name":"## uni.removeInterceptor(name, interceptor?) @removeinterceptor","description":"删除拦截器","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| name | string | 是 | - | - | 需要删除拦截器的 API 名称 |\n| interceptor | Interceptor \\| null | 否 | - | - | 拦截器 | \n","returnValue":"","compatibility":"### removeInterceptor 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.97 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.interceptor.removeInterceptor)\n"},"interceptor":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/interceptor/interceptor.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/interceptor/interceptor\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n const interceptor = {\r\n invoke: function (options : NavigateToOptions) {\r\n console.log('拦截 navigateTo 接口传入参数为:', options)\r\n const url = './page2'\r\n uni.showToast({\r\n title: `重定向到页面:${url}`\r\n })\r\n options.url = url\r\n },\r\n success: function (res : NavigateBackSuccess) {\r\n console.log('拦截 navigateTo 接口 success 返回参数为:', res)\r\n },\r\n fail: function (err : NavigateToFail) {\r\n console.log('拦截 navigateTo 接口 fail 返回参数为:', err)\r\n },\r\n complete: function (res : NavigateToComplete) {\r\n console.log('拦截 navigateTo 接口 complete 返回参数为:', res)\r\n }\r\n } as Interceptor\r\n export default {\r\n data() {\r\n return {\r\n msg: \"会跳转到测试页面1\"\r\n }\r\n },\r\n beforeUnmount() {\r\n // 移除 navigateTo 所有拦截器\r\n uni.removeInterceptor('navigateTo')\r\n },\r\n methods: {\r\n addInterceptor() {\r\n uni.addInterceptor('navigateTo', interceptor)\r\n uni.showToast({\r\n title: '页面跳转已拦截'\r\n })\r\n this.msg = \",路由被劫持到测试页面2\"\r\n },\r\n removeInterceptor() {\r\n uni.removeInterceptor('navigateTo', interceptor)\r\n uni.showToast({\r\n title: '拦截器已移除'\r\n })\r\n this.msg = \"会跳转到测试页面1\"\r\n },\r\n navigateTo() {\r\n uni.navigateTo({\r\n url: './page1',\r\n success(res) {\r\n console.log('res:', res)\r\n },\r\n fail(err) {\r\n console.error('err:', err)\r\n },\r\n complete(res) {\r\n console.log('res:', res)\r\n }\r\n })\r\n }\r\n }\r\n }\r\n\n```\n:::"},"getLaunchOptionsSync":{"name":"## uni.getLaunchOptionsSync() @getlaunchoptionssync","description":"获取本次启动时的参数。返回值与App.onLaunch的回调参数一致
","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **OnLaunchOptions** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| path | string | 是 | - | - | - | \n","compatibility":"### getLaunchOptionsSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [getLaunchOptionsSync](https://doc.dcloud.net.cn/uni-app-x/api/get-launch-options-sync.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.get-launch-options-sync)\n"},"get-launch-options-sync":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-launch-options-sync/get-launch-options-sync.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-launch-options-sync/get-launch-options-sync\n>Template\n```vue\n\n\n\n\n```\n>Script\n```uts\n\nexport default {\n data() {\n return {\n checked: false,\n homePagePath: 'pages/tabBar/component',\n launchOptionsPath: '',\n }\n },\n methods: {\n getLaunchOptionsSync() {\n const launchOptions = uni.getLaunchOptionsSync()\n this.launchOptionsPath = launchOptions.path\n\n if (launchOptions.path == this.homePagePath) {\n this.checked = true\n }\n },\n },\n}\n\n```\n:::"},"exit":{"name":"## uni.exit(options?) @exit","description":"退出当前应用","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ExitOptions](#exitoptions-values) \\| null | 否 | - | - | uni.exit参数定义 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [ExitSuccess](#exitsuccess-values)) => void \\| null | 否 | - | - | uni.exit成功回调函数定义 |\n@| fail | (res: [IExitError](#iexiterror-values)) => void \\| null | 否 | - | - | uni.exit失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.exit完成回调函数定义 | \n\n##### ExitSuccess 的属性值 @exitsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n\n##### IExitError 的属性值 @iexiterror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 12001 \\| 12002 | 是 | - | - | 错误码
- 12001: 系统不支持
- 12002: 未知错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### exit 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | x |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.exit)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/exit/exit.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n```"},"env":{"name":"## env","description":"","param":"### env 的属性值 @env-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| USER_DATA_PATH | string | 是 | - | | 应用专属存储空间的外置存储空间根目录下的files目录 |\n| CACHE_PATH | string | 是 | - | | 应用专属存储空间的外置存储空间根目录下的cache目录 |\n| SANDBOX_PATH | string | 是 | - | | 应用专属存储空间的外置存储空间根目录(caches/files) |\n","compatibility":"","returnValue":"","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.env)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/env/env.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"getPerformance":{"name":"## uni.getPerformance() @getperformance","description":"返回一个Performance对象实例
","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [Performance](#performance-values) |\n\n#### Performance 的方法 @performance-values \n\n#### createObserver(callback) @createobserver\n创建全局性能事件监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (entries: [PerformanceObserverEntryList](#performanceobserverentrylist-values)) => void | 是 | - | - | - | \n\n##### PerformanceObserverEntryList 的方法 @performanceobserverentrylist-values \n\n##### getEntries() @getentries\n该方法返回当前列表中的所有性能数据\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<**PerformanceEntry**\\> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| entryType | string | 是 | - | - | 指标类型 |\n@| name | string | 是 | - | - | 指标名称 |\n@| duration | number | 是 | - | - | 耗时 ms。仅对于表示阶段的指标有效。 |\n@| startTime | number | 是 | - | - | 开始时间,不同指标的具体含义会有差异。 |\n@| path | string \\| null | 否 | - | - | 页面路径。仅 render 和 navigation 类型指标有效。 |\n@| referrerPath | string \\| null | 否 | - | - | 页面跳转来源页面路径。仅 route 指标有效。 |\n@| pageId | number \\| null | 否 | - | - | path 对应页面实例 Id(随机生成,不保证递增)。仅 render/navigation 指标有效。 |\n@| referrerPageId | number \\| null | 否 | - | - | referrerPath对应页面实例 Id(随机生成,不保证递增)。仅 route 指标有效。 |\n@| navigationStart | number \\| null | 否 | - | - | 路由真正响应开始时间。仅 navigation 类型指标有效。 |\n@| navigationType | string \\| null | 否 | - | - | 路由详细类型,与路由方法对应。仅 navigation 类型指标有效。 |\n@| initDataRecvTime | number \\| null | 否 | - | - | 首次渲染参数在渲染层收到的时间。仅 firstRender 指标有效。 |\n@| viewLayerRenderEndTime | number \\| null | 否 | - | - | 渲染层执行渲染结束时间。仅 firstRender 指标有效。 | \n\n###### getEntries 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getEntriesByType(entryType) @getentriesbytype\n获取当前列表中所有类型为 \\[entryType]的性能数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| entryType | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[PerformanceEntry](#performanceentry-values)\\> |\n \n\n###### getEntriesByType 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getEntriesByName(name, entryType) @getentriesbyname\n获取当前列表中所有名称为 \\[name] 且类型为 [entryType]的性能数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| name | string | 是 | - | - | - |\n| entryType | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[PerformanceEntry](#performanceentry-values)\\> |\n \n\n###### getEntriesByName 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [PerformanceObserver](#performanceobserver-values) |\n\n##### PerformanceObserver 的方法 @performanceobserver-values \n\n##### observe(options) @observe\n开始监听\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **PerformanceObserverOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| buffered | boolean | 否 | - | - | - |\n@| entryTypes | Array\\ | 否 | - | - | - |\n@| type | string | 否 | - | - | - | \n\n\n###### observe 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### disconnect() @disconnect\n停止监听\n\n\n###### disconnect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n\n##### createObserver 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### getEntries() @getentries\n该方法返回当前缓冲区中的所有性能数据\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[PerformanceEntry](#performanceentry-values)\\> |\n \n\n##### getEntries 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### getEntriesByType(entryType) @getentriesbytype\n获取当前缓冲区中所有类型为 \\[entryType]的性能数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| entryType | string | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[PerformanceEntry](#performanceentry-values)\\> |\n \n\n##### getEntriesByType 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### getEntriesByName(name, entryType) @getentriesbyname\n获取当前缓冲区中所有名称为 \\[name] 且类型为 [entryType]的性能数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| name | string | 是 | - | - | - |\n| entryType | string | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[PerformanceEntry](#performanceentry-values)\\> |\n \n\n##### getEntriesByName 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setBufferSize(size) @setbuffersize\n设置缓冲区大小,默认缓冲 30 条性能数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| size | number | 是 | - | - | - | \n\n\n##### setBufferSize 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### getPerformance 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.91 | x |\n","tutorial":"\n### 参见\n- [getPerformance](https://doc.dcloud.net.cn/uni-app-x/api/getPerformance)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.get-performance)\n"},"navigateTo":{"name":"## uni.navigateTo(options) @navigateto","description":"保留当前页面,跳转到应用内的某个页面
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [NavigateToOptions](#navigatetooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string ([string.PageURIString](/uts/data-type.md#ide-string)) | 是 | - | | 需要跳转的应用内非 tabBar 的页面的路径 , 路径后可以带参数 |\n@| animationType | string \\| null | 否 | - | | 窗口显示的动画类型
- auto: 自动选择动画效果
- none: 无动画效果
- slide-in-right: 从右侧横向滑动效果
- slide-in-left: 左侧横向滑动效果
- slide-in-top: 从上侧竖向滑动效果
- slide-in-bottom: 从下侧竖向滑动效果
- fade-in: 从透明到不透明逐渐显示效果
- zoom-out: 从小到大逐渐放大显示效果
- zoom-fade-out: 从小到大逐渐放大并且从透明到不透明逐渐显示效果
- pop-in: 从右侧平移入栈动画效果
- UnionType => 'auto' \\| 'none' \\| 'slide-in-right' \\| 'slide-in-left' \\| 'slide-in-top' \\| 'slide-in-bottom' \\| 'fade-in' \\| 'zoom-out' \\| 'zoom-fade-out' \\| 'pop-in' |\n@| events | any \\| null | 否 | - | | 页面间通信接口,用于监听被打开页面发送到当前页面的数据 |\n@| success | (result: AsyncApiSuccessResult) => void \\| null | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (result: [NavigateToFail](#navigatetofail-values)) => void \\| null | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void \\| null | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### NavigateToFail 的属性值 @navigatetofail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### navigateTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/router?id=navigateto)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.navigator.navigateTo)\n"},"reLaunch":{"name":"## uni.reLaunch(options) @relaunch","description":"关闭所有页面,打开到应用内的某个页面
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ReLaunchOptions](#relaunchoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string ([string.PageURIString](/uts/data-type.md#ide-string)) | 是 | - | | 需要跳转的应用内页面路径 , 路径后可以带参数。参数与路径之间使用?分隔,参数键与参数值用=相连,不同参数用&分隔;如 'path?key=value&key2=value2',如果跳转的页面路径是 tabBar 页面则不能带参数 |\n@| success | (result: AsyncApiSuccessResult) => void \\| null | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (result: [ReLaunchFail](#relaunchfail-values)) => void \\| null | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void \\| null | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ReLaunchFail 的属性值 @relaunchfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### reLaunch 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/router?id=relaunch)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.navigator.reLaunch)\n"},"navigateBack":{"name":"## uni.navigateBack(options?) @navigateback","description":"关闭当前页面,返回上一页面或多级页面
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [NavigateBackOptions](#navigatebackoptions-values) \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| delta | number \\| null | 否 | - | | 返回的页面数,如果 delta 大于现有页面数,则返回到首页 |\n@| animationType | string \\| null | 否 | - | | 窗口关闭的动画类型
- auto: 自动选择动画效果
- none: 无动画效果
- slide-out-right: 横向向右侧滑出屏幕动画
- slide-out-left: 横向向左侧滑出屏幕动画
- slide-out-top: 竖向向上侧滑出屏幕动画
- slide-out-bottom: 竖向向下侧滑出屏幕动画
- fade-out: 从不透明到透明逐渐隐藏动画
- zoom-in: 从大逐渐缩小关闭动画
- zoom-fade-in: 从大逐渐缩小并且从不透明到透明逐渐隐藏关闭动画
- pop-out: 从右侧平移出栈动画效果
- UnionType => 'auto' \\| 'none' \\| 'slide-out-right' \\| 'slide-out-left' \\| 'slide-out-top' \\| 'slide-out-bottom' \\| 'fade-out' \\| 'zoom-in' \\| 'zoom-fade-in' \\| 'pop-out' |\n@| success | (result: AsyncApiSuccessResult) => void \\| null | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (result: [NavigateBackFail](#navigatebackfail-values)) => void \\| null | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void \\| null | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### NavigateBackFail 的属性值 @navigatebackfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### navigateBack 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/router?id=navigateback)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.navigator.navigateBack)\n"},"redirectTo":{"name":"## uni.redirectTo(options) @redirectto","description":"关闭当前页面,跳转到应用内的某个页面
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [RedirectToOptions](#redirecttooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string ([string.PageURIString](/uts/data-type.md#ide-string)) | 是 | - | | 需要跳转的应用内非 tabBar 的页面的路径 , 路径后可以带参数 |\n@| success | (result: AsyncApiSuccessResult) => void \\| null | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (result: [RedirectToFail](#redirecttofail-values)) => void \\| null | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void \\| null | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### RedirectToFail 的属性值 @redirecttofail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### redirectTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/router?id=redirectto)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.navigator.redirectTo)\n"},"switchTab":{"name":"## uni.switchTab(options) @switchtab","description":"跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SwitchTabOptions](#switchtaboptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string ([string.PageURIString](/uts/data-type.md#ide-string)) | 是 | - | | 需要跳转的 tabBar 页面的路径,路径后不能带参数 |\n@| success | (result: AsyncApiSuccessResult) => void \\| null | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (result: [SwitchTabFail](#switchtabfail-values)) => void \\| null | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void \\| null | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SwitchTabFail 的属性值 @switchtabfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### switchTab 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/router?id=switchtab)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.navigator.switchTab)\n"},"navigator":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/navigator/navigator.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/navigator/navigator\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { state, setLifeCycleNum } from '@/store/index.uts'\r\n\r\n export default {\r\n data() {\r\n return {\r\n onLoadTime: 0,\r\n onShowTime: 0,\r\n onReadyTime: 0,\r\n onHideTime: 0,\n animationTypeList: [\n // #ifdef APP-ANDROID\n 'slide-in-right',\n 'slide-in-left',\n 'slide-in-top',\n 'slide-in-bottom',\n 'pop-in',\n 'fade-in',\n 'zoom-out',\n 'zoom-fade-out',\n 'none'\n // #endif\n ]\r\n }\r\n },\r\n onLoad() {\r\n this.onLoadTime = Date.now()\r\n console.log('onLoad', this.onLoadTime)\r\n },\r\n onShow() {\r\n this.onShowTime = Date.now()\r\n console.log('onShow', this.onShowTime)\r\n },\r\n onReady() {\r\n this.onReadyTime = Date.now()\r\n console.log('onReady', this.onReadyTime)\r\n },\r\n onHide() {\r\n this.onHideTime = Date.now()\r\n console.log('onHide', this.onHideTime)\r\n },\r\n onBackPress(options : OnBackPressOptions) : boolean | null {\r\n console.log('onBackPress', Date.now())\r\n console.log('onBackPress from', options.from)\r\n return null\r\n },\r\n onUnload() {\r\n console.log('onUnload', Date.now())\r\n },\r\n methods: {\r\n reLaunch() {\r\n uni.reLaunch({\r\n url: '/pages/tabBar/component',\r\n success(result) {\r\n console.log('reLaunch success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('reLaunch fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('reLaunch complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n navigateTo() {\r\n uni.navigateTo({\r\n url: '/pages/API/navigator/new-page/new-page-1?data=Hello',\n success(result) {\r\n console.log('navigateTo success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('navigateTo fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('navigateTo complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\n navigateToAnimationType(animationType: string) {\r\n uni.navigateTo({\r\n url: '/pages/API/navigator/new-page/new-page-1?data=Hello',\n animationType: animationType,\r\n success(result) {\r\n console.log('navigateTo success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('navigateTo fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('navigateTo complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n navigateToErrorPage() {\r\n uni.navigateTo({\r\n url: '/pages/error-page/error-page',\r\n success(result) {\r\n console.log('navigateTo success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n fail(error) {\r\n console.log('navigateTo fail', error.errMsg)\r\n uni.showToast({\r\n title: error.errMsg,\r\n icon: 'none',\r\n })\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n complete(result) {\r\n console.log('navigateTo complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n navigateToDebounce() {\r\n uni.navigateTo({\r\n url: '/pages/API/navigator/new-page/new-page-1?data=debounce',\r\n success(result) {\r\n console.log('navigateTo success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('navigateTo fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('navigateTo complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n uni.navigateTo({\r\n url: '/pages/API/navigator/new-page/new-page-1?data=debounce',\r\n success(result) {\r\n console.log('navigateTo success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n fail(error) {\r\n console.log('navigateTo fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n complete(result) {\r\n console.log('navigateTo complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n // 自动化测试\r\n navigateToRelativePath1() {\r\n uni.navigateTo({\r\n url: 'new-page/new-page-1?data=new-page/new-page-1',\r\n success() {\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail() {\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete() {\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n // 自动化测试\r\n navigateToRelativePath2() {\r\n uni.navigateTo({\r\n url: './new-page/new-page-1?data=./new-page/new-page-1',\r\n success() {\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail() {\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete() {\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n // 自动化测试\r\n navigateToRelativePath3() {\r\n uni.navigateTo({\r\n url: '../navigator/new-page/new-page-1?data=../navigator/new-page/new-page-1',\r\n success() {\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail() {\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete() {\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n navigateBack() {\r\n uni.navigateBack({\r\n success(result) {\r\n console.log('navigateBack success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('navigateBack fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('navigateBack complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n navigateBackWithDelta1() {\r\n uni.navigateTo({\r\n url: '/pages/API/navigator/new-page/new-page-1',\r\n success() {\r\n uni.navigateBack({\r\n delta: 1,\r\n success(result) {\r\n console.log('navigateBack success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('navigateBack fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('navigateBack complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n })\r\n },\r\n navigateBackWithDelta100() {\r\n uni.navigateTo({\r\n url: '/pages/API/navigator/new-page/new-page-1',\r\n success() {\r\n uni.navigateBack({\r\n delta: 100,\r\n success(result) {\r\n console.log('navigateBack success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('navigateBack fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('navigateBack complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n })\r\n },\r\n redirectTo() {\r\n uni.redirectTo({\r\n url: '/pages/API/navigator/new-page/new-page-1?data=Hello',\r\n success(result) {\r\n console.log('redirectTo success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('redirectTo fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('redirectTo complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n switchTab() {\r\n uni.switchTab({\r\n url: '/pages/tabBar/template',\r\n success(result) {\r\n console.log('switchTab success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('switchTab fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('switchTab complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n // 自动化测试\r\n getLifeCycleNum() : number {\r\n return state.lifeCycleNum\r\n },\r\n // 自动化测试\r\n setLifeCycleNum(num : number) {\r\n setLifeCycleNum(num)\r\n },\r\n },\r\n }\r\n\n```\n:::"},"setNavigationBarColor":{"name":"## uni.setNavigationBarColor(options) @setnavigationbarcolor","description":"设置导航条、状态栏颜色
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SetNavigationBarColorOptions](#setnavigationbarcoloroptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| frontColor | \"#ffffff\" \\| \"#000000\" | 是 | - | | 前景颜色值,包括按钮、标题、状态栏的颜色,仅支持 #ffffff 和 #000000 |\n@| backgroundColor | [string.ColorString](/uts/data-type.md#ide-string) | 是 | - | | 背景颜色值,有效值为十六进制颜色 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (error: [SetNavigationBarColorFail](#setnavigationbarcolorfail-values)) => void | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (res: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetNavigationBarColorFail 的属性值 @setnavigationbarcolorfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### setNavigationBarColor 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [setNavigationBarColor](https://doc.dcloud.net.cn/uni-app-x/api/set-navigation-bar-color.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.set-navigation-bar-color)\n"},"set-navigation-bar-color":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/set-navigation-bar-color/set-navigation-bar-color.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/set-navigation-bar-color/set-navigation-bar-color\n>Template\n```vue\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { state, setLifeCycleNum } from '@/store/index.uts'\r\n\r\n export default {\r\n methods: {\r\n setNavigationBarColor1() {\r\n uni.setNavigationBarColor({\r\n frontColor: '#ffffff',\r\n backgroundColor: '#00ff00',\r\n success: () => {\r\n console.log('setNavigationBarColor success')\r\n this.setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail: () => {\r\n console.log('setNavigationBarColor fail')\r\n this.setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete: () => {\r\n console.log('setNavigationBarColor complete')\r\n this.setLifeCycleNum(state.lifeCycleNum + 1)\r\n }\r\n })\r\n },\r\n setNavigationBarColor2() {\r\n uni.setNavigationBarColor({\r\n frontColor: '#000000',\r\n backgroundColor: '#ff0000',\r\n success: () => {\r\n console.log('setNavigationBarColor success')\r\n this.setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail: () => {\r\n console.log('setNavigationBarColor fail')\r\n this.setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete: () => {\r\n console.log('setNavigationBarColor complete')\r\n this.setLifeCycleNum(state.lifeCycleNum + 1)\r\n }\r\n })\r\n },\r\n // 自动化测试\r\n getLifeCycleNum() : number {\r\n return state.lifeCycleNum\r\n },\r\n // 自动化测试\r\n setLifeCycleNum(num : number) {\r\n setLifeCycleNum(num)\r\n },\r\n goNavbarLite() {\r\n uni.navigateTo({\r\n url: '/pages/template/navbar-lite/navbar-lite'\r\n })\r\n }\r\n },\r\n }\r\n\n```\n:::"},"setNavigationBarTitle":{"name":"## uni.setNavigationBarTitle(options) @setnavigationbartitle","description":"动态设置当前页面的标题
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SetNavigationBarTitleOptions](#setnavigationbartitleoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| title | string | 是 | - | | 页面标题 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (error: [SetNavigationBarTitleFail](#setnavigationbartitlefail-values)) => void | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (res: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetNavigationBarTitleFail 的属性值 @setnavigationbartitlefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### setNavigationBarTitle 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.97 | 4.11 |\n","tutorial":"\n### 参见\n- [setNavigationBarTitle](https://doc.dcloud.net.cn/uni-app-x/api/set-navigation-bar-title.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.set-navigation-bar-title)\n"},"set-navigation-bar-title":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/set-navigation-bar-title/set-navigation-bar-title.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/set-navigation-bar-title/set-navigation-bar-title\n>Template\n```vue\n\n\n\n\n```\n>Script\n```uts\n\n import { state, setLifeCycleNum } from '@/store/index.uts'\n\n export default {\n data() {\n return {\n newTitle: 'new title',\n longTitle: 'long title long title long title long title long title long title long title long title long title long title'\n }\n },\n methods: {\n setNavigationBarNewTitle() {\n uni.setNavigationBarTitle({\n title: this.newTitle,\n success: () => {\n console.log('setNavigationBarTitle success')\n this.setLifeCycleNum(state.lifeCycleNum + 1)\n },\n fail: () => {\n console.log('setNavigationBarTitle fail')\n this.setLifeCycleNum(state.lifeCycleNum - 1)\n },\n complete: () => {\n console.log('setNavigationBarTitle complete')\n this.setLifeCycleNum(state.lifeCycleNum + 1)\n }\n })\n },\n setNavigationBarLongTitle() {\n uni.setNavigationBarTitle({\n title: this.longTitle,\n success() {\n console.log('setNavigationBarTitle success')\n },\n fail() {\n console.log('setNavigationBarTitle fail')\n },\n complete() {\n console.log('setNavigationBarTitle complete')\n }\n })\n },\n // 自动化测试\n getLifeCycleNum() : number {\n return state.lifeCycleNum\n },\n // 自动化测试\n setLifeCycleNum(num : number) {\n setLifeCycleNum(num)\n }\n },\n }\n\n```\n:::"},"showTabBar":{"name":"## uni.showTabBar(options?) @showtabbar","description":"显示 tabBar
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ShowTabBarOptions](#showtabbaroptions-values) \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| animation | boolean | 否 | - | - | 是否需要动画效果 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### showTabBar 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [showTabBar](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#showtabbar)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.set-tabbar.showTabBar)\n"},"hideTabBar":{"name":"## uni.hideTabBar(options?) @hidetabbar","description":"隐藏 tabBar
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [HideTabBarOptions](#hidetabbaroptions-values) \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| animation | boolean | 否 | - | - | 是否需要动画效果 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### hideTabBar 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [hideTabBar](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#hidetabbar)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.set-tabbar.hideTabBar)\n"},"showTabBarRedDot":{"name":"## uni.showTabBarRedDot(options) @showtabbarreddot","description":"显示 tabBar 某一项的右上角的红点
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ShowTabBarRedDotOptions](#showtabbarreddotoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| index | number | 是 | - | - | tabBar的哪一项,从左边算起,索引从0开始 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### showTabBarRedDot 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [showTabBarRedDot](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#showtabbarreddot)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.set-tabbar.showTabBarRedDot)\n"},"hideTabBarRedDot":{"name":"## uni.hideTabBarRedDot(options) @hidetabbarreddot","description":"隐藏 tabBar 某一项的右上角的红点
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [HideTabBarRedDotOptions](#hidetabbarreddotoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| index | number | 是 | - | - | tabBar的哪一项,从左边算起,索引从0开始 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### hideTabBarRedDot 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [hideTabBarRedDot](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#hidetabbarreddot)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.set-tabbar.hideTabBarRedDot)\n"},"setTabBarBadge":{"name":"## uni.setTabBarBadge(options) @settabbarbadge","description":"为 tabBar 某一项的右上角添加文本
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SetTabBarBadgeOptions](#settabbarbadgeoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| index | number | 是 | - | - | tabBar的哪一项,从左边算起,索引从0开始 |\n@| text | string | 是 | - | - | 显示的文本,不超过 3 个半角字符 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### setTabBarBadge 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [setTabBarBadge](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#settabbarbadge)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.set-tabbar.setTabBarBadge)\n"},"removeTabBarBadge":{"name":"## uni.removeTabBarBadge(options) @removetabbarbadge","description":"移除 tabBar 某一项右上角的文本
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [RemoveTabBarBadgeOptions](#removetabbarbadgeoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| index | number | 是 | - | - | tabBar的哪一项,从左边算起,索引从0开始 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### removeTabBarBadge 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [removeTabBarBadge](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#removetabbarbadge)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.set-tabbar.removeTabBarBadge)\n"},"setTabBarStyle":{"name":"## uni.setTabBarStyle(options) @settabbarstyle","description":"动态设置 tabBar 的整体样式
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SetTabBarStyleOptions](#settabbarstyleoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| color | string ([string.ColorString](/uts/data-type.md#ide-string)) | 否 | - | - | tab 上的文字默认颜色 |\n@| selectedColor | string ([string.ColorString](/uts/data-type.md#ide-string)) | 否 | - | - | tab 上的文字选中时的颜色 |\n@| backgroundColor | string ([string.ColorString](/uts/data-type.md#ide-string)) | 否 | - | - | tab 的背景色 |\n@| backgroundImage | string | 否 | - | - | 图片背景 |\n@| backgroundRepeat | \"repeat\" \\| \"repeat-x\" \\| \"repeat-y\" \\| \"no-repeat\" | 否 | - | - | 背景图平铺方式
- repeat: 背景图片在垂直方向和水平方向平铺
- repeat-x: 背景图片在水平方向平铺,垂直方向拉伸
- repeat-y: 背景图片在垂直方向平铺,水平方向拉伸
- no-repeat: 背景图片在垂直方向和水平方向都拉伸 |\n@| borderColor | string ([string.ColorString](/uts/data-type.md#ide-string)) | 否 | - | | tabbar上边框的颜色(优先级高于 borderStyle) |\n@| borderStyle | \"black\" \\| \"white\" | 否 | - | - | tabbar上边框的颜色 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### setTabBarStyle 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [setTabBarStyle](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#settabbarstyle)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.set-tabbar.setTabBarStyle)\n"},"setTabBarItem":{"name":"## uni.setTabBarItem(options) @settabbaritem","description":"动态设置 tabBar 某一项的内容
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SetTabBarItemOptions](#settabbaritemoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| index | number | 是 | - | - | tabBar 的哪一项,从左边算起,索引从0开始 |\n@| text | string | 否 | - | - | tab 上按钮文字 |\n@| iconPath | string | 否 | - | - | 图片路径 |\n@| selectedIconPath | string | 否 | - | - | 选中时的图片路径 |\n@| pagePath | string | 否 | - | - | 页面绝对路径 |\n@| iconfont | **SetTabBarItemIconFontOptions** | 否 | - | - | 字体图标,优先级高于 iconPath |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| text | string | 是 | - | - | 字库 Unicode 码 |\n@@| selectedText | string | 是 | - | - | 选中后字库 Unicode 码 |\n@@| fontSize | string | 否 | - | - | 字体图标字号(px) |\n@@| color | string | 否 | - | - | 字体图标颜色 |\n@@| selectedColor | string | 否 | - | - | 字体图标选中颜色 |\n@| visible | boolean | 否 | - | - | tab 是否显示 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### setTabBarItem 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [setTabBarItem](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#settabbaritem)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.set-tabbar.setTabBarItem)\n"},"startPullDownRefresh":{"name":"## uni.startPullDownRefresh(options?) @startpulldownrefresh","description":"开始下拉刷新
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [StartPullDownRefreshOptions](#startpulldownrefreshoptions-values) \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [StartPullDownRefreshFail](#startpulldownrefreshfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### StartPullDownRefreshFail 的属性值 @startpulldownrefreshfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | 下拉刷新错误码
- 4: 框架内部异常 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### startPullDownRefresh 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/uni-app-x/api/pull-down-refresh.html#startpulldownrefresh)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.pull-down-refresh.startPullDownRefresh)\n"},"stopPullDownRefresh":{"name":"## uni.stopPullDownRefresh() @stoppulldownrefresh","description":"停止当前页面下拉刷新
","param":"","returnValue":"","compatibility":"### stopPullDownRefresh 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [stopPullDownRefresh](https://doc.dcloud.net.cn/uni-app-x/api/pull-down-refresh.html#stoppulldownrefresh)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.pull-down-refresh.stopPullDownRefresh)\n"},"pull-down-refresh":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/pull-down-refresh/pull-down-refresh.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/pull-down-refresh/pull-down-refresh\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n export default {\r\n data() {\r\n return {\r\n data: [] as Array,\r\n loadMoreText: \"加载中...\",\r\n showLoadMore: false,\r\n max: 0,\n pulldownRefreshTriggered: false\r\n }\r\n },\r\n onReady() {\r\n uni.startPullDownRefresh();\r\n this.initData();\r\n },\r\n onReachBottom() {\r\n console.log(\"onReachBottom\");\r\n if (this.max > 40) {\r\n this.loadMoreText = \"没有更多数据了!\"\r\n return;\r\n }\r\n this.showLoadMore = true;\r\n setTimeout(() => {\r\n this.setListData();\r\n }, 300);\r\n },\r\n onPullDownRefresh() {\r\n console.log('onPullDownRefresh');\n this.pulldownRefreshTriggered = true\r\n this.initData();\r\n },\r\n methods: {\r\n initData() {\r\n setTimeout(() => {\r\n this.max = 0;\r\n this.data = [];\r\n let data : Array = [];\r\n this.max += 20;\r\n for (let i : number = this.max - 19; i < this.max + 1; i++) {\r\n data.push(i)\r\n }\r\n this.data = this.data.concat(data);\r\n uni.stopPullDownRefresh();\r\n }, 1000);\r\n },\r\n setListData() {\r\n let data : Array = [];\r\n this.max += 10;\r\n for (let i : number = this.max - 9; i < this.max + 1; i++) {\r\n data.push(i)\r\n }\r\n this.data = this.data.concat(data);\r\n }\r\n }\r\n }\r\n\n```\n:::"},"pageScrollTo":{"name":"## uni.pageScrollTo(options) @pagescrollto","description":"将页面滚动到目标位置
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [PageScrollToOptions](#pagescrolltooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| scrollTop | number \\| null | 否 | - | - | 滚动到页面的目标位置 |\n@| selector | string \\| null | 否 | - | - | 选择器 |\n@| offsetTop | number \\| null | 否 | - | | 偏移距离,可以滚动到 selector 加偏移距离的位置 |\n@| duration | number \\| null | 否 | - | - | 滚动动画的时长 |\n@| success | (result: AsyncApiSuccessResult) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [PageScrollToFail](#pagescrolltofail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### PageScrollToFail 的属性值 @pagescrolltofail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### pageScrollTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [pageScrollTo](https://doc.dcloud.net.cn/uni-app-x/api/page-scroll-to.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.page-scroll-to)\n"},"page-scroll-to":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/page-scroll-to/page-scroll-to.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/page-scroll-to/page-scroll-to\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'pageScrollTo',\n }\n },\n methods: {\n scrollTo() {\n uni.pageScrollTo({\n scrollTop: 100,\n duration: 300,\n success: () => {\n console.log('success')\n },\n })\n },\n scrollToElement() {\n uni.pageScrollTo({\n selector: '.custom-element',\n duration: 300,\n success: () => {\n console.log('success')\n },\n })\n },\n },\n }\n\n```\n:::"},"onTabBarMidButtonTap":{"name":"## uni.onTabBarMidButtonTap(options) @ontabbarmidbuttontap","description":"监听中间按钮的点击事件
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | () => void | 是 | - | - | - | \n","returnValue":"","compatibility":"### onTabBarMidButtonTap 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [onTabBarMidButtonTap](https://doc.dcloud.net.cn/uni-app-x/api/on-tab-bar-mid-button-tap.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.on-tab-bar-mid-button-tap)\n"},"getElementById":{"name":"## uni.getElementById(id) @getelementbyid","description":"返回一个匹配特定 ID 的元素, 如果不存在,返回 null。\\
如果需要获取指定的节点类型,需要使用 as 进行类型转换。\\
ID 区分大小写,且应该是唯一的。如果存在多个匹配的元素,则返回第一个匹配的元素。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| id | [string.IDString](/uts/data-type.md#ide-string) \\| string | 是 | - | - | - | \n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [UniElement](/dom/unielement.md) \\| null | 否 |\n \n","compatibility":"### getElementById 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [getElementById](https://doc.dcloud.net.cn/uni-app-x/api/get-element.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.dom.get-element.getElementById)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-element-by-id/get-element-by-id.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-element-by-id/get-element-by-id\n>Template\n```vue\n\r\n\r\n\r\n\n```\n>Script\n```uts\n\r\n export default {\r\n data() {\r\n return {\r\n checked: false,\r\n homePagePath: '/pages/tabBar/component',\r\n launchOptionsPath: '',\r\n }\r\n },\n methods: {\r\n getElementByNotExistId() : Element | null {\r\n return uni.getElementById('not-exist-id')\r\n },\r\n changePageHeadBackgroundColor() {\r\n const pageHead = uni.getElementById('page-head')!\r\n pageHead.style.setProperty('background-color', 'red')\r\n },\r\n changeTextColor() {\r\n const text = uni.getElementById('text')!\r\n text.style.setProperty('color', 'red')\r\n },\r\n changeViewStyle() {\r\n const view = uni.getElementById('view')\r\n if (view !== null) {\r\n view.style.setProperty('width', '90%')\r\n view.style.setProperty('height', '50px')\r\n view.style.setProperty('background-color', '#007AFF')\r\n }\r\n },\r\n goMultipleRootNode() {\r\n uni.navigateTo({ url: '/pages/API/get-element-by-id/get-element-by-id-multiple-root-node' })\r\n },\n //自动化测试获取text元素的offsetLeft属性值\n getTextOffsetLeft(): number {\n const text = uni.getElementById('text')!\n return text.offsetLeft\n }\r\n }\r\n }\r\n\n```\n:::"},"createSelectorQuery":{"name":"## uni.createSelectorQuery() @createselectorquery","description":"返回一个SelectorQuery对象实例
","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n\n#### SelectorQuery 的方法 @selectorquery-values \n\n#### in(component?) @in\n将选择器的选取范围更改为自定义组件component内\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| component | any \\| null | 否 | - | - | | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n \n\n##### in 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### select(selector) @select\n在当前页面下选择第一个匹配选择器selector的节点\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| selector | string | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [NodesRef](#nodesref-values) |\n\n##### NodesRef 的方法 @nodesref-values \n\n##### boundingClientRect(callback?) @boundingclientrect\n添加节点的布局位置的查询请求,相对于显示区域,以像素为单位\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void \\| null | 否 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n \n\n###### boundingClientRect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### scrollOffset(callback) @scrolloffset\n添加节点的滚动位置查询请求,以像素为单位\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n \n\n###### scrollOffset 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### fields(fields, callback) @fields\n获取节点的相关信息,需要获取的字段在fields中指定\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| fields | **NodeField** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| id | boolean \\| null | 否 | - | - | 是否返回节点 id |\n@| dataset | boolean \\| null | 否 | - | - | 是否返回节点 dataset |\n@| rect | boolean \\| null | 否 | - | - | 是否返回节点布局位置(left right top bottom) |\n@| size | boolean \\| null | 否 | - | - | 是否返回节点尺寸(width height) |\n@| scrollOffset | boolean \\| null | 否 | - | - | 是否返回节点的 scrollLeft scrollTop,节点必须是 scroll-view 或者 viewport |\n@| properties | Array\\ \\| null | 否 | - | - | 指定属性名列表,返回节点对应属性名的当前属性值(只能获得组件文档中标注的常规属性值,id class style 和事件绑定的属性值不可获取) |\n@| computedStyle | Array\\ \\| null | 否 | - | - | 指定样式名列表,返回节点对应样式名的当前值 |\n@| context | boolean \\| null | 否 | - | | 是否返回节点对应的 Context 对象 |\n| callback | (result: any) => void | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n \n\n###### fields 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### context(callback) @context\n添加节点的 Context 对象查询请求\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n \n\n###### context 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n\n\n##### node(callback) @node\n获取 Node 节点实例。目前支持 Canvas 的获取。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n \n\n###### node 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n\n##### select 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### selectAll(selector) @selectall\n在当前页面下选择匹配选择器selector的所有节点\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| selector | string | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [NodesRef](#nodesref-values) |\n \n\n##### selectAll 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### selectViewport() @selectviewport\n选择显示区域\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [NodesRef](#nodesref-values) |\n \n\n##### selectViewport 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### exec(callback) @exec\n执行所有的请求\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: Array\\) => void \\| null | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [NodesRef](#nodesref-values) \\| null | 否 |\n \n\n##### exec 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### createSelectorQuery 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [createSelectorQuery](https://doc.dcloud.net.cn/uni-app-x/api/nodes-info.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.dom.nodes-info.createSelectorQuery)\n"},"nodes-info":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/nodes-info/nodes-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/nodes-info/nodes-info\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import nodeChild from './nodes-info-child.uvue'\r\n\r\n type NodeInfoType = {\r\n left : number | null,\r\n top : number | null,\r\n right : number | null,\r\n bottom : number | null,\r\n width : number | null,\r\n height : number | null,\r\n }\r\n\r\n export default {\r\n components: {\r\n nodeChild\r\n },\r\n data() {\r\n return {\r\n title: 'createSelectorQuery',\r\n nodeInfoList: [] as NodeInfoType[],\r\n // 仅用于自动化测试\r\n rootNodeInfo: null as NodeInfoType | null,\r\n //供自动化测试使用\r\n // resizeRectValid: false\r\n }\r\n },\r\n onResize() {\r\n //供自动化测试使用\r\n /* var rect12Element = uni.getElementById(\"rect-1-2\")\r\n if(rect12Element != null) {\r\n var domRect = rect12Element.getBoundingClientRect()\r\n if(domRect.width > 100) {\r\n this.resizeRectValid = true\r\n }\r\n } */\r\n },\r\n methods: {\r\n // 仅用于自动化测试\r\n getRootNodeInfo(selector : string) {\r\n uni.createSelectorQuery().select(selector).boundingClientRect().exec((ret) => {\r\n if (ret.length == 1) {\r\n const nodeInfo = ret[0] as NodeInfo;\r\n const nodeType = {\r\n left: nodeInfo.left,\r\n top: nodeInfo.top,\r\n right: nodeInfo.right,\r\n bottom: nodeInfo.bottom,\r\n width: nodeInfo.width,\r\n height: nodeInfo.height,\r\n } as NodeInfoType;\r\n this.rootNodeInfo = nodeType\r\n }\r\n })\r\n },\r\n getNodeInfo() {\r\n uni.createSelectorQuery().select('.rect1').boundingClientRect().exec((ret) => {\r\n this.nodeInfoList.length = 0\r\n const i = ret[0] as NodeInfo\r\n this.nodeInfoList.push({\r\n left: i.left,\r\n top: i.top,\r\n right: i.right,\r\n bottom: i.bottom,\r\n width: i.width,\r\n height: i.height,\r\n } as NodeInfoType)\r\n })\r\n },\r\n getAllNodeInfo() {\r\n uni.createSelectorQuery().selectAll('.rect').boundingClientRect().exec((ret) => {\r\n this.nodeInfoList.length = 0\r\n const array = ret[0] as NodeInfo[]\r\n array.forEach((i) => {\r\n this.nodeInfoList.push({\r\n left: i.left,\r\n top: i.top,\r\n right: i.right,\r\n bottom: i.bottom,\r\n width: i.width,\r\n height: i.height,\r\n } as NodeInfoType)\r\n })\r\n })\r\n }\r\n }\r\n }\r\n\n```\n:::"},"showActionSheet":{"name":"## uni.showActionSheet(options) @showactionsheet","description":"从底部向上弹出操作菜单","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ShowActionSheetOptions](#showactionsheetoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| title | string \\| null | 否 | - | - | 菜单标题 |\n@| alertText | string \\| null | 否 | - | - | 警示文案(同菜单标题, app无效) |\n@| itemList | Array\\ | 是 | - | - | 按钮的文字数组 |\n@| itemColor | [string.ColorString](/uts/data-type.md#ide-string) \\| null | 否 | - | - | 按钮的文字颜色,字符串格式(iOS默认为系统控件颜色) |\n@| popover | **Popover** \\| null | 否 | - | - | 大屏设备弹出原生选择按钮框的指示区域,默认居中显示 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| top | number | 是 | - | - | 指示区域坐标,使用原生 navigationBar 时一般需要加上 navigationBar 的高度 |\n@@| left | number | 是 | - | - | 指示区域坐标 |\n@@| width | number | 是 | - | - | 指示区域宽度 |\n@@| height | number | 是 | - | - | 指示区域高度 |\n@| success | (res: [ShowActionSheetSuccess](#showactionsheetsuccess-values)) => void \\| null | 否 | - | - | uni.showActionSheet成功回调函数定义 |\n@| fail | (res: [IPromptError](#iprompterror-values)) => void \\| null | 否 | - | - | uni.showActionSheet成功回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.showActionSheet成功回调函数定义 | \n\n##### ShowActionSheetSuccess 的属性值 @showactionsheetsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tapIndex | number \\| null | 否 | - | - | 用户点击的按钮,从上到下的顺序,从0开始 |\n\n##### IPromptError 的属性值 @iprompterror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1 \\| 1001 | 是 | - | - | 错误码
- 1\t 撤销
- 1001 请求参数非法 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### showActionSheet 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/ui/prompt.html#showactionsheet)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.prompt.showActionSheet)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/action-sheet/action-sheet.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/action-sheet/action-sheet\n>Template\n```vue\n\r\n\n\n```\n>Script\n```uts\n\r\n type ItemType = {\r\n value : string,\r\n name : string,\r\n }\r\n export default {\r\n data() {\r\n return {\r\n title: 'action-sheet',\r\n itemColorCustom: false,\r\n itemContentLarge: false,\r\n itemNumLargeSelect: false,\n showErrorToast:true,\r\n items: [{\r\n value: '标题',\r\n name: '有标题'\r\n },\r\n {\r\n value: '',\r\n name: '无标题'\r\n },\r\n {\r\n value: '超长标题测试内容,测试超过显示最大范围之后的样式-超长标题测试内容,测试超过显示最大范围之后的样式',\r\n name: '超长标题'\r\n }\r\n ] as ItemType[],\r\n current: 0,\r\n }\r\n },\n onLoad(){\n uni.showActionSheet({\n title: \"onLoad 调用示例,请手动取消\",\n itemList:['item1', 'item2'],\n })\n },\r\n methods: {\n //自动化测试例专用\n jest_getWindowInfo() : GetWindowInfoResult {\n return uni.getWindowInfo();\n },\r\n radioChange(e : UniRadioGroupChangeEvent) {\r\n for (let i = 0; i < this.items.length; i++) {\r\n if (this.items[i].value === e.detail.value) {\r\n this.current = i;\r\n break;\r\n }\r\n }\r\n },\r\n itemContentLargeChange: function (e : UniSwitchChangeEvent) {\r\n this.itemContentLarge = e.detail.value\r\n },\r\n itemColorChange: function (e : UniSwitchChangeEvent) {\r\n this.itemColorCustom = e.detail.value\r\n },\r\n itemNumLargeChange: function (e : UniSwitchChangeEvent) {\r\n this.itemNumLargeSelect = e.detail.value\r\n },\r\n actionSheetTap() {\r\n\r\n let itemInfo = ['item1', 'item2', 'item3', 'item4']\r\n\r\n if (this.itemContentLarge) {\r\n itemInfo = ['两个黄鹂鸣翠柳,一行白鹭上青天。窗含西岭千秋雪,门泊东吴万里船', '水光潋滟晴方好,山色空蒙雨亦奇。 欲把西湖比西子,淡妆浓抹总相宜', '']\r\n }\n\n if (this.itemNumLargeSelect) {\r\n // 大量选项测试,不能超过6个元素 https://uniapp.dcloud.net.cn/api/ui/prompt.html#showactionsheet\r\n itemInfo = []\n for (var i = 1; i <= 10; i++) {\r\n itemInfo.push('两个黄鹂鸣翠柳,一行白鹭上青天');\r\n }\r\n }\r\n\r\n const that = this\r\n if (this.itemColorCustom) {\r\n uni.showActionSheet({\r\n title: this.items[this.current].value,\r\n itemList: itemInfo,\r\n itemColor: \"#ff00ff\",\r\n success: (e) => {\r\n console.log(e.tapIndex);\r\n uni.showToast({\r\n title: \"点击了第\" + e.tapIndex + \"个选项\",\r\n icon: \"none\"\r\n })\r\n },\r\n fail: (e) => {\n if(this.showErrorToast){\n uni.showToast({\n title: e.errMsg,\n icon: \"none\"\n })\n }\r\n console.log(e);\r\n }\r\n })\r\n } else {\r\n uni.showActionSheet({\r\n title: this.items[this.current].value,\r\n itemList: itemInfo,\r\n success: (e) => {\r\n console.log(e.tapIndex);\r\n uni.showToast({\r\n title: \"点击了第\" + e.tapIndex + \"个选项\",\r\n icon: \"none\"\r\n })\r\n },\r\n fail: (e) => {\r\n console.log(e);\n if(this.showErrorToast){\n uni.showToast({\n title: e.errMsg,\n icon: \"none\"\n })\n }\n }\r\n })\r\n }\r\n },\r\n }\r\n }\r\n\n```\n:::"},"showLoading":{"name":"## uni.showLoading(options) @showloading","description":"显示 loading 提示框, 需主动调用 uni.hideLoading 才能关闭提示框。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ShowLoadingOptions](#showloadingoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| title | string | 是 | - | - | 提示的内容,长度与 icon 取值有关。 |\n@| mask | boolean \\| null | 否 | - | - | 是否显示透明蒙层,防止触摸穿透,默认:false |\n@| success | (res: ShowLoadingSuccess) => void \\| null | 否 | - | - | uni.showLoading成功回调函数定义 |\n@| fail | (res: [IPromptError](#iprompterror-values)) => void \\| null | 否 | - | - | uni.showLoading失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.showLoading完成回调函数定义 | \n\n##### IPromptError 的属性值 @iprompterror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1 \\| 1001 | 是 | - | - | 错误码
- 1\t 撤销
- 1001 请求参数非法 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### showLoading 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/ui/prompt.html#showloading)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.prompt.showLoading)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/loading/loading.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/loading/loading\n>Template\n```vue\n\n\n\n```\n>Script\n```uts\n\n type ItemType = {\n value : string\n name : string\n }\n export default {\n data() {\n return {\n title: 'loading',\n items: [\n {\n value: 'null',\n name: '无标题',\n },\n {\n value: '三秒后自动关闭',\n name: '普通标题',\n },\n {\n value: '超长文本内容,测试超出范围-超长文本内容,测试超出范围-三秒后自动关闭',\n name: '长标题',\n },\n ] as ItemType[],\n current: 0,\n maskSelect: false,\n titleSelect: \"null\"\n }\n },\n onLoad(){\n uni.showLoading({\n \ttitle:'onLoad 调用示例,2秒后消失'\n })\n setTimeout(function() {\n uni.hideLoading()\n }, 2000);\n },\n methods: {\n //自动化测试例专用\n jest_getWindowInfo() : GetWindowInfoResult {\n return uni.getWindowInfo();\n },\n\n radioChange(e : UniRadioGroupChangeEvent) {\n const selected = this.items.find((item) : boolean => {\n return item.value == e.detail.value\n })\n if (selected != null) {\n this.titleSelect = selected.value\n }\n },\n maskChange: function (e : UniSwitchChangeEvent) {\n this.maskSelect = e.detail.value\n },\n showLoading: function () {\n\n console.log(this.titleSelect)\n if (this.titleSelect == \"null\") {\n uni.showLoading({\n title: \"\",\n mask: this.maskSelect\n });\n } else {\n uni.showLoading({\n title: this.titleSelect,\n mask: this.maskSelect\n });\n }\n setTimeout(() => {\n this.hideLoading();\n }, 3000);\n },\n hideLoading: function () {\n uni.hideLoading();\n }\n }\n }\n\n```\n:::"},"hideLoading":{"name":"## uni.hideLoading() @hideloading","description":"隐藏 loading 提示框。","param":"","returnValue":"","compatibility":"### hideLoading 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/ui/prompt.html#hideloading)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.prompt.hideLoading)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/loading/loading.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/loading/loading\n>Template\n```vue\n\n\n\n```\n>Script\n```uts\n\n type ItemType = {\n value : string\n name : string\n }\n export default {\n data() {\n return {\n title: 'loading',\n items: [\n {\n value: 'null',\n name: '无标题',\n },\n {\n value: '三秒后自动关闭',\n name: '普通标题',\n },\n {\n value: '超长文本内容,测试超出范围-超长文本内容,测试超出范围-三秒后自动关闭',\n name: '长标题',\n },\n ] as ItemType[],\n current: 0,\n maskSelect: false,\n titleSelect: \"null\"\n }\n },\n onLoad(){\n uni.showLoading({\n \ttitle:'onLoad 调用示例,2秒后消失'\n })\n setTimeout(function() {\n uni.hideLoading()\n }, 2000);\n },\n methods: {\n //自动化测试例专用\n jest_getWindowInfo() : GetWindowInfoResult {\n return uni.getWindowInfo();\n },\n\n radioChange(e : UniRadioGroupChangeEvent) {\n const selected = this.items.find((item) : boolean => {\n return item.value == e.detail.value\n })\n if (selected != null) {\n this.titleSelect = selected.value\n }\n },\n maskChange: function (e : UniSwitchChangeEvent) {\n this.maskSelect = e.detail.value\n },\n showLoading: function () {\n\n console.log(this.titleSelect)\n if (this.titleSelect == \"null\") {\n uni.showLoading({\n title: \"\",\n mask: this.maskSelect\n });\n } else {\n uni.showLoading({\n title: this.titleSelect,\n mask: this.maskSelect\n });\n }\n setTimeout(() => {\n this.hideLoading();\n }, 3000);\n },\n hideLoading: function () {\n uni.hideLoading();\n }\n }\n }\n\n```\n:::"},"showModal":{"name":"## uni.showModal(options) @showmodal","description":"显示模态弹窗,可以只有一个确定按钮,也可以同时有确定和取消按钮。类似于一个API整合了 html 中:alert、confirm。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ShowModalOptions](#showmodaloptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| title | string \\| null | 否 | - | - | 提示的标题 |\n@| content | string \\| null | 否 | - | - | 提示的内容 |\n@| showCancel | boolean \\| null | 否 | true
是否显示取消按钮,默认为 true | - | |\n@| cancelText | string \\| null | 否 | - | - | 取消按钮的文字,默认为\"取消\" |\n@| cancelColor | [string.ColorString](/uts/data-type.md#ide-string) \\| null | 否 | - | - | 取消按钮的文字颜色,默认为\"#000000\" |\n@| confirmText | string \\| null | 否 | - | - | 确定按钮的文字,默认为\"确定\" |\n@| confirmColor | [string.ColorString](/uts/data-type.md#ide-string) \\| null | 否 | - | - | 确定按钮的文字颜色 |\n@| editable | boolean \\| null | 否 | false
是否显示输入框 | - | |\n@| placeholderText | string \\| null | 否 | - | - | 显示输入框时的提示文本 |\n@| success | (res: [ShowModalSuccess](#showmodalsuccess-values)) => void \\| null | 否 | - | - | uni.showModal成功回调函数定义 |\n@| fail | (res: [IPromptError](#iprompterror-values)) => void \\| null | 否 | - | - | uni.showModal失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.showModal完成回调函数定义 | \n\n##### ShowModalSuccess 的属性值 @showmodalsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| confirm | boolean | 是 | - | - | 为 true 时,表示用户点击了确定按钮 |\n| cancel | boolean | 是 | - | - | 为 true 时,表示用户点击了取消(用于 Android 系统区分点击蒙层关闭还是点击取消按钮关闭) |\n| content | string \\| null | 否 | - | - | editable 为 true 时,用户输入的文本 |\n\n##### IPromptError 的属性值 @iprompterror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1 \\| 1001 | 是 | - | - | 错误码
- 1\t 撤销
- 1001 请求参数非法 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### showModal 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/ui/prompt.html#showmodal)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.prompt.showModal)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/modal/modal.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/modal/modal\n>Template\n```vue\n\n\n\n\n```\n>Script\n```uts\n\n type ItemType = {\n value : string,\n name : string,\n }\n export default {\n data() {\n return {\n title: 'modal',\n showCancelSelect: false,\n cancelTextSelect: false,\n confirmTextSelect: false,\n editableSelect: false,\n placeholderTextSelect: false,\n exeRet: \"\",\n items: [{\n value: '标题',\n name: '有标题'\n },\n {\n value: '',\n name: '无标题'\n },\n {\n value: '超长标题测试内容,测试超过显示最大范围之后的样式-超长标题测试内容,测试超过显示最大范围之后的样式',\n name: '超长标题'\n }\n ] as ItemType[],\n current: 0\n }\n },\n onLoad() {\n uni.showModal({\n title: \"onLoad 调用示例,请手动取消\",\n showCancel: false\n })\n },\n methods: {\n //自动化测试例专用\n jest_getWindowInfo() : GetWindowInfoResult {\n return uni.getWindowInfo();\n },\n showCancelChange: function (e : UniSwitchChangeEvent) {\n this.showCancelSelect = e.detail.value\n },\n cancelTextChange: function (e : UniSwitchChangeEvent) {\n this.cancelTextSelect = e.detail.value\n },\n confirmTextChange: function (e : UniSwitchChangeEvent) {\n this.confirmTextSelect = e.detail.value\n },\n editableChange: function (e : UniSwitchChangeEvent) {\n this.editableSelect = e.detail.value\n },\n placeholderTextChange: function (e : UniSwitchChangeEvent) {\n this.placeholderTextSelect = e.detail.value\n },\n radioChange(e : UniRadioGroupChangeEvent) {\n for (let i = 0; i < this.items.length; i++) {\n if (this.items[i].value === e.detail.value) {\n this.current = i;\n break;\n }\n }\n },\n modalTap: function () {\n let cancelTextVal : string\n let cancelColorVal = ''\n if (this.cancelTextSelect) {\n cancelTextVal = \"修改后的取消文本\"\n cancelColorVal = \"#ff00ff\"\n } else {\n cancelTextVal = \"取消\"\n }\n\n let confirmTextVal = '确定'\n let confirmColorVal = ''\n if (this.confirmTextSelect) {\n confirmTextVal = \"修改后的确定文本\"\n confirmColorVal = \"#00ffff\"\n }\n\n let placeholderTextVal = ''\n let contentVal = \"弹窗内容,告知当前状态、信息和解决方法,描述文字尽量控制在三行内\"\n if (this.placeholderTextSelect) {\n placeholderTextVal = \"定制提示信息\"\n contentVal = \"\"\n }\n uni.showModal({\n title: this.items[this.current].value,\n editable: this.editableSelect,\n placeholderText: placeholderTextVal,\n content: contentVal,\n showCancel: this.showCancelSelect,\n cancelText: cancelTextVal,\n cancelColor: cancelColorVal,\n confirmText: confirmTextVal,\n confirmColor: confirmColorVal,\n success: (res) => {\n this.exeRet = JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = JSON.stringify(res)\n }\n })\n }\n }\n }\n\n```\n:::"},"showToast":{"name":"## uni.showToast(options) @showtoast","description":"显示消息提示框","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ShowToastOptions](#showtoastoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| title | string | 是 | - | - | 提示的内容,长度与 icon 取值有关。 |\n@| icon | \"success\" \\| \"error\" \\| \"fail\" \\| \"exception\" \\| \"loading\" \\| \"none\" | 否 | - | - | icon值说明 success: 显示成功图标,error: 显示错误图标; fail: 显示错误图标,此时title文本无长度显示; exception: 显示异常图标,此时title文本无长度显示; loading: 显示加载图标;none: 不显示图标。 |\n@| image | [string.ImageURIString](/uts/data-type.md#ide-string) \\| null | 否 | - | - | 自定义图标的本地路径(app端暂不支持gif) |\n@| mask | boolean \\| null | 否 | - | - | 是否显示透明蒙层,防止触摸穿透,默认:false |\n@| duration | number \\| null | 否 | - | - | 提示的延迟时间,单位毫秒,默认:1500 |\n@| position | \"top\" \\| \"center\" \\| \"bottom\" | 否 | - | - | position值说明(仅App生效) top: 居上显示; center: 居中显示;bottom: 居底显示 |\n@| success | (res: ShowToastSuccess) => void \\| null | 否 | - | - | uni.showToast成功回调函数定义 |\n@| fail | (res: [IPromptError](#iprompterror-values)) => void \\| null | 否 | - | - | uni.showToast失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.showToast完成回调函数定义 | \n\n##### IPromptError 的属性值 @iprompterror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1 \\| 1001 | 是 | - | - | 错误码
- 1\t 撤销
- 1001 请求参数非法 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### showToast 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/ui/prompt.html#showtoast)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.prompt.showToast)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/toast/toast.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/toast/toast\n>Template\n```vue\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'toast',\n exeRet: ''\n }\n },\n onLoad() {\n uni.showToast({\n title: 'onLoad 调用示例,2秒后消失'\n })\n setTimeout(function () {\n uni.hideToast()\n }, 2000);\n },\n methods: {\n //自动化测试例专用\n jest_getWindowInfo() : GetWindowInfoResult {\n return uni.getWindowInfo();\n },\n toast1Tap: function () {\n uni.showToast({\n title: \"默认\",\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toastTapIconError: function () {\n uni.showToast({\n title: \"默认\",\n icon: 'error',\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toast2Tap: function () {\n uni.showToast({\n title: \"duration 3000\",\n duration: 3000,\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toast3Tap: function () {\n uni.showToast({\n title: \"loading\",\n icon: \"loading\",\n duration: 5000,\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toast4Tap: function () {\n uni.showToast({\n title: \"logo\",\n image: \"/static/uni.png\",\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n // #ifdef APP\n toast5Tap: function () {\n uni.showToast({\n title: \"显示一段轻提示\",\n position: 'bottom',\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n // #endif\n hideToast: function () {\n uni.hideToast()\n }\n }\n }\n\n```\n:::"},"hideToast":{"name":"## uni.hideToast() @hidetoast","description":"隐藏消息提示框。","param":"","returnValue":"","compatibility":"### hideToast 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/ui/prompt.html#hidetoast)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.prompt.hideToast)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/toast/toast.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/toast/toast\n>Template\n```vue\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'toast',\n exeRet: ''\n }\n },\n onLoad() {\n uni.showToast({\n title: 'onLoad 调用示例,2秒后消失'\n })\n setTimeout(function () {\n uni.hideToast()\n }, 2000);\n },\n methods: {\n //自动化测试例专用\n jest_getWindowInfo() : GetWindowInfoResult {\n return uni.getWindowInfo();\n },\n toast1Tap: function () {\n uni.showToast({\n title: \"默认\",\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toastTapIconError: function () {\n uni.showToast({\n title: \"默认\",\n icon: 'error',\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toast2Tap: function () {\n uni.showToast({\n title: \"duration 3000\",\n duration: 3000,\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toast3Tap: function () {\n uni.showToast({\n title: \"loading\",\n icon: \"loading\",\n duration: 5000,\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toast4Tap: function () {\n uni.showToast({\n title: \"logo\",\n image: \"/static/uni.png\",\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n // #ifdef APP\n toast5Tap: function () {\n uni.showToast({\n title: \"显示一段轻提示\",\n position: 'bottom',\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n // #endif\n hideToast: function () {\n uni.hideToast()\n }\n }\n }\n\n```\n:::"},"loadFontFace":{"name":"## uni.loadFontFace(options) @loadfontface","description":"动态加载网络字体
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [LoadFontFaceOptions](#loadfontfaceoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| global | boolean | 否 | - | | 是否全局生效。微信小程序 '2.10.0'起支持全局生效,需在 app.vue 中调用。 |\n@| family | string | 是 | - | | 定义的字体名称 |\n@| source | string | 是 | - | | 字体资源的地址, App-Android 平台不支持 woff、woff2 格式字体文件 |\n@| desc | **LoadFontFaceOptionDesc** | 否 | - | | 可选的字体描述符 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| style | string \\| null | 否 | - | - | |\n@@| weight | string \\| null | 否 | - | - | |\n@@| variant | string \\| null | 否 | - | - | |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (error: [LoadFontFaceFail](#loadfontfacefail-values)) => void | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (res: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### LoadFontFaceFail 的属性值 @loadfontfacefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 4 \\| 99 \\| 101 \\| 100001 \\| 100002 \\| 200001 \\| 300001 \\| 300002 | 是 | - | - | 错误码
- 4: 框架内部异常
- 99: page is not ready
- 101: 参数错误
- 100001: family is null
- 100002: source is null
- 200001: local font not found
- 300001: same source task is loading
- 300002: download fail |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### loadFontFace 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.10 |\n","tutorial":"\n### 参见\n- [loadFontFace](https://doc.dcloud.net.cn/uni-app-x/api/load-font-face.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.load-font-face)\n"},"load-font-face":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/load-font-face/load-font-face.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/load-font-face/load-font-face\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n uniIcon1: '\\ue100',\n uniIcon2: '\\ue101',\n }\n },\n onLoad() {\n uni.loadFontFace({\n global: true,\n family: 'UniFontFamily',\n source: \"url('/static/font/uni.ttf')\",\n success() {\n console.log('global loadFontFace uni.ttf success')\n },\n fail(error) {\n console.warn('global loadFontFace uni.ttf fail', error.errMsg)\n },\n })\n uni.loadFontFace({\n family: 'AlimamaDaoLiTiTTF',\n source:\n \"url('https://qiniu-web-assets.dcloud.net.cn/uni-app-x/static/font/AlimamaDaoLiTi.ttf')\",\n success() {\n console.log('loadFontFace Remote AlimamaDaoLiTi.ttf success')\n },\n fail(error) {\n console.warn('loadFontFace Remote AlimamaDaoLiTi.ttf fail', error.errMsg)\n },\n })\n uni.loadFontFace({\n family: 'AlimamaDaoLiTiOTF',\n source: \"url('/static/font/AlimamaDaoLiTi.otf')\",\n success() {\n console.log('loadFontFace AlimamaDaoLiTi.otf success')\n },\n fail(error) {\n console.warn('loadFontFace AlimamaDaoLiTi.otf fail', error.errMsg)\n },\n })\n uni.loadFontFace({\n family: 'AlimamaDaoLiTiWOFF',\n source: \"url('/static/font/AlimamaDaoLiTi.woff')\",\n success() {\n console.log('loadFontFace AlimamaDaoLiTi.woff success')\n },\n fail(error) {\n console.warn('loadFontFace AlimamaDaoLiTi.woff fail', error.errMsg)\n },\n })\n uni.loadFontFace({\n family: 'AlimamaDaoLiTiWOFF2',\n source: \"url('/static/font/AlimamaDaoLiTi.woff2')\",\n success() {\n console.log('loadFontFace AlimamaDaoLiTi.woff2 success')\n },\n fail(error) {\n console.warn('loadFontFace AlimamaDaoLiTi.woff2 fail', error.errMsg)\n },\n })\n },\n methods: {\n navigateToChild() {\n uni.navigateTo({\n url: '/pages/API/load-font-face/load-font-face-child',\n })\n },\n },\n }\n\n```\n:::"},"rpx2px":{"name":"## uni.rpx2px(number) @rpx2px","description":"将rpx单位值转换成px","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| number | number | 是 | - | - | | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| number |\n \n","compatibility":"### rpx2px 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.02 | 4.02 | 4.11 |\n","tutorial":"\n### 参见\n- [rpx2px](https://doc.dcloud.net.cn/uni-app-x/api/rpx2px.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.rpx2px)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/rpx2px/rpx2px.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/rpx2px/rpx2px\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'rpx2px',\n rpxValue: 750,\n pxValue: 0,\n result: false\n }\n },\n methods: {\n rpx2px: function () {\n this.pxValue = uni.rpx2px(this.rpxValue);\n\n // 仅限自动化测试\n const windowInfo = uni.getWindowInfo();\n if (windowInfo.windowWidth == this.pxValue) {\n this.result = true\n }\n }\n }\n }\n\n```\n:::"},"setAppTheme":{"name":"## uni.setAppTheme(options) @setapptheme","description":"设置应用主题","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SetAppThemeOptions](#setappthemeoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| theme | \"light\" \\| \"dark\" \\| \"auto\" | 是 | - | | 主题 |\n@| success | (result: [SetAppThemeSuccessResult](#setappthemesuccessresult-values)) => void | 否 | null | | 接口调用成功的回调函数 |\n@| fail | (result: [IAppThemeFail](#iappthemefail-values)) => void | 否 | null | | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | null | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetAppThemeSuccessResult 的属性值 @setappthemesuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| theme | string | 是 | - | - | - |\n\n##### IAppThemeFail 的属性值 @iappthemefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 702001 \\| 2002000 | 是 | - | | 错误码
- 702001 参数错误
- 2002000 未知错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### setAppTheme 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.theme-change.setAppTheme)\n"},"onOsThemeChange":{"name":"## uni.onOsThemeChange(callback) @onosthemechange","description":"开启监听系统主题变化","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (res: [OsThemeChangeResult](#osthemechangeresult-values)) => void | 是 | - | - | | \n\n#### OsThemeChangeResult 的属性值 @osthemechangeresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| osTheme | string | 是 | - | | 系统主题 |\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| number |\n \n","compatibility":"### onOsThemeChange 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.theme-change.onOsThemeChange)\n"},"offOsThemeChange":{"name":"## uni.offOsThemeChange(id) @offosthemechange","description":"取消监听系统主题变化","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| id | number | 是 | - | - | | \n","returnValue":"","compatibility":"### offOsThemeChange 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.theme-change.offOsThemeChange)\n"},"onAppThemeChange":{"name":"## uni.onAppThemeChange(callback) @onappthemechange","description":"开启监听应用主题变化","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (res: [AppThemeChangeResult](#appthemechangeresult-values)) => void | 是 | - | - | | \n\n#### AppThemeChangeResult 的属性值 @appthemechangeresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| appTheme | string | 是 | - | | 应用主题 |\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| number |\n \n","compatibility":"### onAppThemeChange 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.theme-change.onAppThemeChange)\n"},"offAppThemeChange":{"name":"## uni.offAppThemeChange(id) @offappthemechange","description":"取消监听应用主题变化","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| id | number | 是 | - | - | | \n","returnValue":"","compatibility":"### offAppThemeChange 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.theme-change.offAppThemeChange)\n"},"theme-change":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/theme-change/theme-change.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"request":{"name":"## uni.request(param) @request","description":"发起网络请求。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| param | [RequestOptions\\](#requestoptions-values) | 是 | - | - | 网络请求参数 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string | 是 | - | | 开发者服务器接口地址
|\n@| data | any \\| null | 否 | null | | 请求的参数 UTSJSONObject\\|string类型 |\n@| header | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) \\| null | 否 | null | | 设置请求的 header,header 中不能设置 Referer |\n@| method | \"GET\" \\| \"POST\" \\| \"PUT\" \\| \"PATCH\" \\| \"DELETE\" \\| \"HEAD\" \\| \"OPTIONS\" | 否 | \"GET\" | | 请求方法
- GET GET方法请求一个指定资源的表示形式,使用 GET 的请求应该只被用于获取数据。
- POST POST方法用于将实体提交到指定的资源,通常导致在服务器上的状态变化或副作用。
- PUT PUT方法用有效载荷请求替换目标资源的所有当前表示。
- PATCH PATCH方法用于对资源应用部分修改。
- DELETE DELETE方法删除指定的资源。
- HEAD HEAD方法请求一个与GET请求的响应相同的响应,但没有响应体。
- OPTIONS OPTIONS 方法用于描述目标资源的通信选项。 |\n@| timeout | number \\| null | 否 | 60000 | | 超时时间,单位 ms |\n@| withCredentials | boolean \\| null | 否 | - | | 跨域请求时是否携带凭证(cookies)
|\n@| success | (option: [RequestSuccess\\](#requestsuccess-values)) => void \\| null | 否 | null | - | 网络请求成功回调。 |\n@| fail | (option: [RequestFail](#requestfail-values)) => void \\| null | 否 | null | - | 网络请求失败回调。 |\n@| complete | (option: any) => void \\| null | 否 | null | - | 网络请求完成回调,成功或者失败都会调用。 | \n\n##### RequestSuccess\\ 的属性值 @requestsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | T \\| null | 否 | - | | 开发者服务器返回的数据 |\n| statusCode | number | 是 | - | | 开发者服务器返回的 HTTP 状态码 |\n| header | any | 是 | - | | 开发者服务器返回的 HTTP Response Header |\n| cookies | Array\\ | 是 | - | | 开发者服务器返回的 cookies,格式为字符串数组 |\n\n##### RequestFail 的属性值 @requestfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 5 \\| 1000 \\| 100001 \\| 100002 \\| 600003 \\| 600009 \\| 602001 | 是 | - | - | 错误码
- 5 接口超时
- 1000 服务端系统错误
- 100001 json数据解析错误
- 100002 错误信息json解析失败
- 600003 网络中断
- 600009 URL格式不合法
- 602001 request系统错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [RequestTask](#requesttask-values) |\n\n#### RequestTask 的方法 @requesttask-values \n\n#### abort() @abort\n中断网络请求。\n\n\n##### abort 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/request.html#request)\n \n","compatibility":"### request 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/request.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.request)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/request/request.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/request/request\n>Template\n```vue\n\r\n\r\n\n```\n>Script\n```uts\n\n // #ifdef APP\n import {\n testInovkeRequest,\n CommonOptions\n } from '@/uni_modules/test-invoke-network-api'\n // #endif\n\n class GETDataType {\n data: UTSJSONObject | null = null\n }\n\r\n const duration = 2000\r\n const methodMap = {\r\n \"GET\": \"/api/http/method/get\",\r\n \"POST\": \"/api/http/method/post\",\r\n \"PUT\": \"/api/http/method/put\",\r\n \"DELETE\": \"/api/http/method/delete\",\r\n \"PATCH\": \"/api/http/method/patch\",\r\n \"OPTIONS\": \"/api/http/method/options\",\r\n \"HEAD\": \"/api/http/method/head\"\r\n }\r\n\r\n\r\n export default {\r\n data() {\r\n return {\r\n title: 'request',\r\n res: '',\r\n task: null as RequestTask | null,\r\n host: \"https://request.dcloud.net.cn\",\r\n url: \"/api/http/method/get\",\r\n method: \"GET\" as RequestMethod | null,\r\n data: null as any | null,\r\n header: null as UTSJSONObject | null,\r\n errorCodeUrls: [\r\n \"/api/http/statusCode/200\",\r\n \"/api/http/statusCode/204\",\r\n \"/api/http/statusCode/301\",\r\n \"/api/http/statusCode/302\",\r\n \"/api/http/statusCode/307\",\r\n \"/api/http/statusCode/400\",\r\n \"/api/http/statusCode/401\",\r\n \"/api/http/statusCode/403\",\r\n \"/api/http/statusCode/404\",\r\n \"/api/http/statusCode/405\",\r\n \"/api/http/statusCode/500\",\r\n \"/api/http/statusCode/502\",\r\n \"/api/http/statusCode/503\",\r\n \"/api/http/statusCode/504\",\r\n ],\r\n headerUrls: [\r\n \"/api/http/header/ua\",\r\n \"/api/http/header/referer\",\r\n \"/api/http/header/requestCookie\",\r\n \"/api/http/header/setCookie\",\r\n \"/api/http/header/deleteCookie\"\r\n ],\r\n contentTypeUrls: [\r\n \"/api/http/contentType/text/plain\",\r\n \"/api/http/contentType/text/html\",\r\n \"/api/http/contentType/text/xml\",\r\n \"/api/http/contentType/image/gif\",\r\n \"/api/http/contentType/image/jpeg\",\r\n \"/api/http/contentType/image/png\",\r\n \"/api/http/contentType/application/json\",\r\n \"/api/http/contentType/application/octetStream\",\r\n ],\r\n postUrls: [\r\n \"/api/http/contentType/json\",\r\n \"/api/http/contentType/xWwwFormUrlencoded\",\r\n ],\r\n //自动化测试例专用\r\n jest_result: false,\n jest_result_data: \"\"\r\n }\r\n },\r\n onLoad() {\r\n },\r\n onUnload() {\r\n uni.hideLoading();\r\n this.task?.abort();\r\n },\r\n methods: {\r\n changeMethod(e : RequestMethod) {\r\n this.method = e;\r\n this.url = methodMap[e] as string;\r\n this.data = null;\r\n this.header = null;\r\n },\r\n changeUrl(e : string) {\r\n this.method = \"GET\";\r\n this.url = e;\r\n this.data = null;\r\n this.header = null;\r\n },\r\n changeUrlFromPost(e : string) {\r\n this.method = \"POST\";\r\n this.url = e;\r\n switch (e) {\r\n case \"/api/http/contentType/json\":\r\n this.header = {\r\n \"Content-Type\": \"application/json\"\r\n };\r\n this.data = {\r\n \"hello\": \"world\"\r\n };\r\n break;\r\n case \"/api/http/contentType/xWwwFormUrlencoded\":\r\n this.header = {\r\n \"Content-Type\": \"application/x-www-form-urlencoded\"\r\n };\r\n this.data = \"hello=world\";\r\n break;\r\n }\r\n },\r\n sendRequest() {\r\n uni.showLoading({\r\n title: \"请求中...\"\r\n })\r\n this.task = uni.request({\r\n url: this.host + this.url,\r\n // dataType: \"json\",\r\n // responseType: \"json\",\r\n method: this.method,\r\n data: this.data,\r\n header: this.header,\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: (res) => {\r\n console.log('request success', JSON.stringify(res.data))\r\n console.log('request success header is :', JSON.stringify(res.header))\r\n uni.showToast({\r\n title: '请求成功',\r\n icon: 'success',\r\n mask: true,\r\n duration: duration\r\n });\r\n this.res = '请求结果 : ' + JSON.stringify(res);\r\n },\r\n fail: (err) => {\r\n console.log('request fail', err);\r\n uni.showModal({\r\n content: err.errMsg,\r\n showCancel: false\r\n });\r\n },\r\n complete: () => {\r\n uni.hideLoading()\r\n },\r\n });\r\n },\r\n //自动化测试例专用\r\n jest_request() {\r\n uni.request({\r\n url: this.host + this.url,\r\n // dataType: \"json\",\r\n // responseType: \"json\",\r\n method: this.method,\r\n data: this.data,\r\n header: this.header,\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\r\n this.jest_result = true;\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\r\n jest_set_cookie() {\r\n uni.request({\r\n url: this.host + \"/api/http/header/setCookie\",\r\n method: \"GET\",\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\r\n this.jest_cookie_request(true)\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\n jest_set_cookie_expires(){\n uni.request({\n url: this.host + \"/api/http/header/setCookie?expires=5\",\n method: \"GET\",\n timeout: 6000,\n sslVerify: false,\n withCredentials: false,\n firstIpv4: false,\n success: () => {\n this.jest_cookie_request(true)\n },\n fail: () => {\n this.jest_result = false;\n },\n });\n },\r\n jest_delete_cookie() {\r\n uni.request({\r\n url: this.host + \"/api/http/header/deleteCookie\",\r\n method: \"GET\",\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\r\n this.jest_cookie_request(false)\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\r\n jest_cookie_request(needCookie : boolean) {\r\n uni.request({\r\n url: this.host + \"/api/http/header/requestCookie\",\r\n method: \"GET\",\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: (res) => {\n const requestCookie = (res.data as UTSJSONObject).getJSON(\"data\")?.getAny(\"requestCookie\")\r\n console.log(\"requestCookie \", requestCookie);\n this.jest_result_data = JSON.stringify(requestCookie)\r\n if (requestCookie instanceof Array) {\r\n this.jest_result = needCookie ? requestCookie.length > 0 : requestCookie.length == 0\r\n } else {\r\n this.jest_result = needCookie ? (requestCookie as UTSJSONObject).toMap().size > 0 : (requestCookie as UTSJSONObject).toMap().size == 0\r\n }\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\r\n jest_timeout_null() {\r\n uni.request({\r\n url: this.host + (methodMap['GET'] as string),\r\n method: \"GET\",\r\n timeout: null,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\n this.jest_result = true;\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\n jest_get_with_data() {\n uni.request({\n url: \"https://unidemo.dcloud.net.cn/api/banner/36kr\",\n method: \"GET\",\n data:{\n column: 'id,post_id,title,author_name,cover,published_at' //需要的字段名\n },\n timeout: 6000,\n sslVerify: false,\n withCredentials: false,\n firstIpv4: false,\n success: () => {\n this.jest_result = true;\n },\n fail: () => {\n this.jest_result = false;\n },\n });\n },\n jest_get_with_generics() {\n uni.request({\n url: this.host + (methodMap['GET'] as string),\n method: \"GET\",\n timeout: null,\n sslVerify: false,\n withCredentials: false,\n firstIpv4: false,\n success: (res: RequestSuccess) => {\n console.log(\"success :\", res.data?.data);\n this.jest_result = true;\n },\n fail: () => {\n this.jest_result = false;\n },\n });\n },\n jest_get_array() {\n uni.request({\n url: 'https://unidemo.dcloud.net.cn/api/news?column=title,author_name,cover,published_at',\n method: \"GET\",\n success: (res : RequestSuccess) => {\n console.log(res)\n if (res.statusCode == 200 && Array.isArray(res.data)) {\n this.jest_result = true\n } else {\n this.jest_result = false\n }\n },\n fail: () => {\n this.jest_result = false\n }\n });\n },\n jest_uts_module_invoked(){\n // #ifdef APP\n testInovkeRequest({\n success:(res: any)=>{\n console.log(\"success :\", res);\n this.jest_result = true\n },\n fail:(err: any)=>{\n console.log(\"fail :\", err);\n this.jest_result = false\n }\n } as CommonOptions)\n // #endif\n }\r\n }\r\n }\r\n\n```\n:::"},"uploadFile":{"name":"## uni.uploadFile(options) @uploadfile","description":"将本地资源上传到开发者服务器。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [UploadFileOptions](#uploadfileoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string | 是 | - | | 开发者服务器 url |\n@| filePath | string \\| null | 否 | null | | 要上传文件资源的路径, 支持uni.env |\n@| name | string \\| null | 否 | null | | 文件对应的 key , 开发者在服务器端通过这个 key 可以获取到文件二进制内容 |\n@| files | Array\\<**UploadFileOptionFiles**\\> \\| null | 否 | null | | 需要上传的文件列表。 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| name | string \\| null | 否 | \"file\" | | multipart 提交时,表单的项目名,默认为 file,如果 name 不填或填的值相同,可能导致服务端读取文件时只能读取到一个文件。 |\n@@| uri | string | 是 | - | | 要上传文件资源的路径 |\n@@| file | any \\| null | 否 | - | | 要上传的文件对象 |\n@| header | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) \\| null | 否 | null | | HTTP 请求 Header, header 中不能设置 Referer |\n@| formData | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) \\| null | 否 | null | | HTTP 请求中其他额外的 form data |\n@| timeout | number \\| null | 否 | 120000 | | 超时时间,单位 ms |\n@| success | (result: [UploadFileSuccess](#uploadfilesuccess-values)) => void \\| null | 否 | null | - | 成功返回的回调函数 |\n@| fail | (result: [UploadFileFail](#uploadfilefail-values)) => void \\| null | 否 | null | - | 失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 结束的回调函数(调用成功、失败都会执行) | \n\n##### UploadFileSuccess 的属性值 @uploadfilesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | string | 是 | - | | 开发者服务器返回的数据 |\n| statusCode | number | 是 | - | | 开发者服务器返回的 HTTP 状态码 |\n\n##### UploadFileFail 的属性值 @uploadfilefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 5 \\| 1000 \\| 100001 \\| 100002 \\| 600003 \\| 600009 \\| 602001 | 是 | - | - | 错误码
- 5 接口超时
- 1000 服务端系统错误
- 100001 json数据解析错误
- 100002 错误信息json解析失败
- 600003 网络中断
- 600009 URL格式不合法
- 602001 request系统错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [UploadTask](#uploadtask-values) |\n\n#### UploadTask 的方法 @uploadtask-values \n\n#### abort() @abort\n中断上传任务。\n\n\n##### abort 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/network-file.html#uploadfile)\n\n#### onProgressUpdate(callback) @onprogressupdate\n监听上传进度变化。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnProgressUpdateResult](#onprogressupdateresult-values)) => void | 是 | - | - | | \n\n##### OnProgressUpdateResult 的属性值 @onprogressupdateresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| progress | number | 是 | - | | 上传进度百分比 |\n| totalBytesSent | number | 是 | - | | 已经上传的数据长度,单位 Bytes |\n| totalBytesExpectedToSend | number | 是 | - | | 预期需要上传的数据总长度,单位 Bytes |\n\n\n##### onProgressUpdate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/network-file.html#uploadfile)\n \n","compatibility":"### uploadFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/network-file.html#uploadfile)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.upload-file)\n"},"upload-file":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/upload-file/upload-file.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/upload-file/upload-file\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n // #ifdef APP\r\n import {\r\n testInovkeUploadFile,\r\n CommonOptions\r\n } from '@/uni_modules/test-invoke-network-api'\r\n // #endif\r\n\r\n export default {\r\n data() {\r\n return {\r\n title: 'uploadFile',\r\n imageSrc: '',\r\n task: null as UploadTask | null,\r\n //自动化测试例专用\r\n jest_result: false,\r\n }\r\n },\r\n onLoad() {\r\n },\r\n onUnload() {\r\n this.imageSrc = '';\r\n uni.hideLoading();\r\n this.task?.abort();\r\n },\r\n methods: {\r\n chooseImage: function () {\r\n uni.chooseImage({\r\n count: 1,\r\n sizeType: ['compressed'],\r\n sourceType: ['album'],\r\n success: (res) => {\r\n console.log('chooseImage success, temp path is', res.tempFilePaths[0])\r\n var imageSrc = res.tempFilePaths[0]\r\n uni.showLoading({\r\n title: '上传中'\r\n })\r\n this.task = uni.uploadFile({\r\n url: 'https://unidemo.dcloud.net.cn/upload', //仅为示例,非真实的接口地址\r\n filePath: imageSrc,\r\n name: 'file',\r\n formData: {\r\n 'user': 'test'\r\n },\r\n success: (res) => {\r\n console.log('uploadImage success, res is:', res)\r\n uni.hideLoading();\r\n uni.showToast({\r\n title: '上传成功',\r\n icon: 'success',\r\n duration: 1000\r\n })\r\n this.imageSrc = imageSrc\r\n },\r\n fail: (err) => {\r\n console.log('uploadImage fail', err);\r\n uni.hideLoading();\r\n uni.showModal({\r\n content: err.errMsg,\r\n showCancel: false\r\n });\r\n },\r\n });\r\n },\r\n fail: (err) => {\r\n console.log('chooseImage fail', err)\r\n }\r\n })\r\n },\r\n //自动化测试例专用\r\n jest_uploadFile() {\r\n const imageSrc = \"/static/uni.png\";\r\n this.task = uni.uploadFile({\r\n url: 'https://unidemo.dcloud.net.cn/upload', //仅为示例,非真实的接口地址\r\n filePath: imageSrc,\r\n name: 'file',\r\n formData: {\r\n 'user': 'test'\r\n },\r\n success: () => {\r\n this.jest_result = true;\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n })\r\n },\r\n jest_uploadFile_with_uni_env() {\n const filePath = `${uni.env.CACHE_PATH}/download/uni-app.png`\r\n uni.downloadFile({\r\n url: \"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni-app.png\",\r\n filePath: filePath,\r\n success: () => {\r\n uni.uploadFile({\n url: 'https://unidemo.dcloud.net.cn/upload', //仅为示例,非真实的接口地址\n filePath: filePath,\n name: 'file',\n success: () => {\n this.jest_result = true;\n },\n fail: () => {\n this.jest_result = false;\n },\n })\n },\r\n fail: () => {\r\n this.jest_result = false\r\n }\r\n });\r\n },\r\n jest_set_cookie() {\r\n uni.request({\r\n url: \"https://request.dcloud.net.cn/api/http/header/setCookie\",\r\n method: \"GET\",\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\r\n this.jest_cookie_upload(true)\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\r\n\r\n jest_delete_cookie() {\r\n uni.request({\r\n url: \"https://request.dcloud.net.cn/api/http/header/deleteCookie\",\r\n method: \"GET\",\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\r\n this.jest_cookie_upload(false)\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\r\n jest_cookie_upload(needCookie : boolean) {\r\n const imageSrc = \"/static/uni.png\";\r\n this.task = uni.uploadFile({\r\n url: 'https://request.dcloud.net.cn/api/http/header/upload',\r\n filePath: imageSrc,\r\n name: 'file',\r\n success: (res : UploadFileSuccess) => {\r\n const data = JSON.parseObject(res.data)\r\n const errCode = data?.getNumber(\"errCode\")\r\n if (errCode != null && errCode == 1000) {\r\n this.jest_result = needCookie ? false : true;\r\n } else {\r\n this.jest_result = needCookie ? true : false;\r\n }\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n })\r\n },\r\n jest_files_upload() {\r\n const imageSrc = \"/static/uni.png\";\r\n this.task = uni.uploadFile({\r\n url: 'https://unidemo.dcloud.net.cn/upload',\r\n files: [\r\n {\r\n name: \"file1\",\r\n uri: imageSrc\r\n } as UploadFileOptionFiles,\r\n {\r\n name: \"file2\",\r\n uri: imageSrc\r\n } as UploadFileOptionFiles\r\n ],\r\n success: (res : UploadFileSuccess) => {\r\n if (res.statusCode == 200) {\r\n this.jest_result = true;\r\n }\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n })\r\n },\r\n jest_uts_module_invoked() {\r\n // #ifdef APP\r\n testInovkeUploadFile({\r\n success: (res : any) => {\r\n console.log(\"success :\", res);\r\n this.jest_result = true\r\n },\r\n fail: (err : any) => {\r\n console.log(\"fail :\", err);\r\n this.jest_result = false\r\n }\r\n } as CommonOptions)\r\n // #endif\r\n }\r\n }\r\n }\r\n\n```\n:::"},"downloadFile":{"name":"## uni.downloadFile(options) @downloadfile","description":"下载文件资源到本地,客户端直接发起一个 HTTP GET 请求,返回文件的本地临时路径。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [DownloadFileOptions](#downloadfileoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string | 是 | - | | 下载资源的 url |\n@| header | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) \\| null | 否 | null | | HTTP 请求 Header,header 中不能设置 Referer |\n@| filePath | string \\| null | 否 | null | | 指定文件下载路径
支持相对路径与绝对路径,例:
`/imgs/pic.png`、`/storage/emulated/0/Android/data/io.dcloud.HBuilder/apps/HBuilder/temp/imgs/pic.png`
并且支持指定下载目录,例:
`/imgs/`
支持uni.env的平台兼容性:Android自3.9开始支持uni.env,iOS自4.13开始支持uni.env |\n@| timeout | number \\| null | 否 | 120000 | | 超时时间,单位 ms |\n@| success | (result: [DownloadFileSuccess](#downloadfilesuccess-values)) => void \\| null | 否 | null | - | 下载成功后以 tempFilePath 的形式传给页面,res = {tempFilePath: '文件的临时路径'} |\n@| fail | (result: [DownloadFileFail](#downloadfilefail-values)) => void \\| null | 否 | null | - | 失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 结束的回调函数(调用成功、失败都会执行) | \n\n##### DownloadFileSuccess 的属性值 @downloadfilesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tempFilePath | string | 是 | - | | 临时文件路径,下载后的文件会存储到一个临时文件 |\n| statusCode | number | 是 | - | | 开发者服务器返回的 HTTP 状态码 |\n\n##### DownloadFileFail 的属性值 @downloadfilefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 5 \\| 1000 \\| 100001 \\| 100002 \\| 600003 \\| 600009 \\| 602001 | 是 | - | - | 错误码
- 5 接口超时
- 1000 服务端系统错误
- 100001 json数据解析错误
- 100002 错误信息json解析失败
- 600003 网络中断
- 600009 URL格式不合法
- 602001 request系统错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [DownloadTask](#downloadtask-values) |\n\n#### DownloadTask 的方法 @downloadtask-values \n\n#### abort() @abort\n中断下载任务。\n\n\n##### abort 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/network-file.html#downloadfile)\n\n#### onProgressUpdate(callback) @onprogressupdate\n监听下载进度变化。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnProgressDownloadResult](#onprogressdownloadresult-values)) => void | 是 | - | - | | \n\n##### OnProgressDownloadResult 的属性值 @onprogressdownloadresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| progress | number | 是 | - | | 下载进度百分比 |\n| totalBytesWritten | number | 是 | - | | 已经下载的数据长度,单位 Bytes |\n| totalBytesExpectedToWrite | number | 是 | - | | 预期需要下载的数据总长度,单位 Bytes |\n\n\n##### onProgressUpdate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/network-file.html#downloadfile)\n \n","compatibility":"### downloadFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/network-file.html#downloadfile)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.download-file)\n"},"download-file":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/download-file/download-file.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/download-file/download-file\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\n\n // #ifdef APP\n import {\n testInovkeDownloadFile,\n CommonOptions\n } from '@/uni_modules/test-invoke-network-api'\n // #endif\n\r\n export default {\r\n data() {\r\n return {\r\n title: 'downloadFile',\r\n imageSrc: '',\r\n task: null as DownloadTask | null,\r\n //自动化测试例专用\r\n jest_result: false\r\n }\r\n },\r\n onLoad() {\r\n },\r\n onUnload() {\r\n // this.imageSrc = '';\r\n uni.hideLoading();\r\n this.task?.abort();\r\n },\r\n methods: {\r\n downloadImage: function () {\r\n uni.showLoading({\r\n title: '下载中'\r\n })\r\n var self = this\r\n this.task = uni.downloadFile({\r\n url: \"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni-app.png\",\r\n success: (res) => {\r\n console.log('downloadFile success, res is', res.tempFilePath)\r\n self.imageSrc = res.tempFilePath;\r\n uni.hideLoading();\r\n },\r\n fail: (err) => {\r\n console.log('downloadFile fail, err is:', err)\r\n uni.hideLoading();\r\n }\r\n });\r\n this.task?.onProgressUpdate((update) => {\r\n console.log(\"progress : \", update.progress);\r\n })\r\n },\r\n //自动化测试例专用\r\n jest_downloadFile() {\r\n uni.downloadFile({\r\n url: \"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni-app.png\",\r\n success: () => {\r\n this.jest_result = true\r\n },\r\n fail: () => {\r\n this.jest_result = false\r\n }\r\n });\r\n },\n\n jest_downloadFile_with_uni_env() {\n uni.downloadFile({\n url: \"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni-app.png\",\n filePath: `${uni.env.CACHE_PATH}/a/b/`,\n success: () => {\n this.jest_result = true\n },\n fail: () => {\n this.jest_result = false\n }\n });\n },\n\n jest_set_cookie(){\n uni.request({\n url: \"https://request.dcloud.net.cn/api/http/header/setCookie\",\n method: \"GET\",\n timeout: 6000,\n sslVerify: false,\n withCredentials: true,\n firstIpv4: false,\n success: () => {\n this.jest_cookie_download(true)\n },\n fail: () => {\n this.jest_result = false;\n },\n });\n },\n\n jest_delete_cookie(){\n uni.request({\n url: \"https://request.dcloud.net.cn/api/http/header/deleteCookie\",\n method: \"GET\",\n timeout: 6000,\n sslVerify: false,\n withCredentials: true,\n firstIpv4: false,\n success: () => {\n this.jest_cookie_download(false)\n },\n fail: () => {\n this.jest_result = false;\n },\n });\n },\n jest_cookie_download(needCookie: boolean){\n uni.downloadFile({\n url: \"https://request.dcloud.net.cn/api/http/header/download\",\n success: () => {\n this.jest_result = needCookie ? true : false;\n },\n fail: () => {\n this.jest_result = needCookie ? false : true;\n }\n });\n },\n jest_uts_module_invoked(){\n // #ifdef APP\n testInovkeDownloadFile({\n success:(res: any)=>{\n console.log(\"success :\", res);\n this.jest_result = true\n },\n fail:(err: any)=>{\n console.log(\"fail :\", err);\n this.jest_result = false\n }\n } as CommonOptions)\n // #endif\n },\n jest_special_characters_download(){\n uni.downloadFile({\n url: \"https://web-ext-storage.dcloud.net.cn/hello-uni-app-x/1789834995055525889-你好%23你好.png\",\n success: (res: DownloadFileSuccess) => {\n this.jest_result = true;\n console.log(\"res :\", res);\n },\n fail: () => {\n this.jest_result = false;\n }\n });\n }\r\n }\r\n }\r\n\n```\n:::"},"getNetworkType":{"name":"## uni.getNetworkType(options) @getnetworktype","description":"获取网络类型","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetNetworkTypeOptions](#getnetworktypeoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: [GetNetworkTypeSuccess](#getnetworktypesuccess-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetNetworkTypeSuccess 的属性值 @getnetworktypesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| networkType | string | 是 | - | - | 网络类型 |\n","returnValue":"","compatibility":"### getNetworkType 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/system/network?id=getnetworktype)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.get-network-type)\n"},"get-network-type":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-network-type/get-network-type.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-network-type/get-network-type\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n export default {\r\n data() {\r\n return {\r\n title: 'getNetworkType',\r\n hasNetworkType: false,\r\n networkType: '',\r\n connectedWifi: '',\r\n //自动化测试例专用\r\n jest_result: false,\r\n }\r\n },\r\n onLoad() {\r\n },\r\n onUnload: function () {\r\n this.networkType = '';\r\n this.hasNetworkType = false;\r\n },\r\n methods: {\r\n getNetworkType: function () {\r\n uni.getNetworkType({\r\n success: (res) => {\r\n console.log(res)\r\n this.hasNetworkType = true;\r\n this.networkType = res.networkType\r\n },\r\n fail: () => {\r\n uni.showModal({\r\n content: '获取失败!',\r\n showCancel: false\r\n })\r\n }\r\n })\r\n },\r\n clear: function () {\r\n this.hasNetworkType = false;\r\n this.networkType = '';\r\n this.connectedWifi = '';\r\n },\r\n //自动化测试例专用\r\n jest_getNetworkType() {\r\n uni.getNetworkType({\r\n success: () => {\r\n this.jest_result = true;\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n }\r\n })\r\n }\r\n }\r\n }\r\n\n```\n:::"},"connectSocket":{"name":"## connectSocket(options) @connectsocket","description":"创建一个 WebSocket 连接。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ConnectSocketOptions](#connectsocketoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string | 是 | - | | 开发者服务器接口地址 |\n@| header | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) \\| null | 否 | null | | 如果属性名存在,且类型为UTSJSONObject返回对应的结果,不存在返回null |\n@| protocols | Array\\ \\| null | 否 | null | | 子协议数组 |\n@| success | (result: [ConnectSocketSuccess](#connectsocketsuccess-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [ConnectSocketFail](#connectsocketfail-values)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ConnectSocketSuccess 的属性值 @connectsocketsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n\n##### ConnectSocketFail 的属性值 @connectsocketfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | 错误码
- 600009 URL格式不合法 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [SocketTask](#sockettask-values) |\n\n#### SocketTask 的方法 @sockettask-values \n\n#### send(options) @send\n通过 WebSocket 连接发送数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SendSocketMessageOptions](#sendsocketmessageoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| data | any | 是 | - | | 需要发送的内容 |\n@| success | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [SendSocketMessageFail](#sendsocketmessagefail-values)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SendSocketMessageFail 的属性值 @sendsocketmessagefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 10001 \\| 10002 \\| 602001 | 是 | - | - | 错误码
- 10001 发送数据超限,发送队列不能超过16M大小。
- 10002 websocket未连接
- 602001 websocket系统错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n\n##### send 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/socket-task.html#sockettask-send)\n\n#### close(options) @close\n关闭 WebSocket 连接\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **CloseSocketOptions** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| code | number \\| null | 否 | 1000 | | 一个数字值表示关闭连接的状态号,表示连接被关闭的原因。如果这个参数没有被指定,默认的取值是1000 (表示正常连接关闭) |\n@| reason | string \\| null | 否 | \"\" | | 一个可读的字符串,表示连接被关闭的原因。这个字符串必须是不长于123字节的UTF-8 文本(不是字符) |\n@| success | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### close 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/socket-task.html#sockettask-close)\n\n#### onOpen(callback) @onopen\n监听 WebSocket 连接打开事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | **OnSocketOpenCallbackResult** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| header | any | 是 | - | | 连接成功的 HTTP 响应 Header | \n\n\n##### onOpen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/socket-task.html#sockettask-onopen)\n\n#### onClose(callback) @onclose\n监听 WebSocket 连接关闭事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | | \n\n\n##### onClose 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/socket-task.html#sockettask-onclose)\n\n#### onError(callback) @onerror\n监听 WebSocket 错误\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void | 是 | - | - | | \n\n\n##### onError 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/socket-task.html#sockettask-onerror)\n\n#### onMessage(callback) @onmessage\n监听 WebSocket 接受到服务器的消息事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnSocketMessageCallbackResult](#onsocketmessagecallbackresult-values)) => void | 是 | - | - | | \n\n##### OnSocketMessageCallbackResult 的属性值 @onsocketmessagecallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | any | 是 | - | | 服务器返回的消息 |\n\n\n##### onMessage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/socket-task.html#sockettask-onmessage)\n \n","compatibility":"### connectSocket 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#connectsocket)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket-global.connectSocket)\n"},"onSocketOpen":{"name":"## onSocketOpen(options) @onsocketopen","description":"监听WebSocket连接打开事件。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | (result: [OnSocketOpenCallbackResult](#onsocketopencallbackresult-values)) => void | 是 | - | - | | \n","returnValue":"","compatibility":"### onSocketOpen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#onsocketopen)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket-global.onSocketOpen)\n"},"onSocketError":{"name":"## onSocketError(callback) @onsocketerror","description":"下载文件资源到本地,客户端直接发起一个 HTTP GET 请求,返回文件的本地临时路径。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnSocketErrorCallbackResult](#onsocketerrorcallbackresult-values)) => void | 是 | - | - | | \n\n#### OnSocketErrorCallbackResult 的属性值 @onsocketerrorcallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | 错误信息 |\n","returnValue":"","compatibility":"### onSocketError 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#onsocketerror)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket-global.onSocketError)\n"},"sendSocketMessage":{"name":"## sendSocketMessage(options) @sendsocketmessage","description":"通过 WebSocket 连接发送数据,需要先 uni.connectSocket,并在 uni.onSocketOpen 回调之后才能发送。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SendSocketMessageOptions](#sendsocketmessageoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| data | any | 是 | - | | 需要发送的内容 |\n@| success | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [SendSocketMessageFail](#sendsocketmessagefail-values)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SendSocketMessageFail 的属性值 @sendsocketmessagefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 10001 \\| 10002 \\| 602001 | 是 | - | - | 错误码
- 10001 发送数据超限,发送队列不能超过16M大小。
- 10002 websocket未连接
- 602001 websocket系统错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### sendSocketMessage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#sendsocketmessage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket-global.sendSocketMessage)\n"},"onSocketMessage":{"name":"## onSocketMessage(callback) @onsocketmessage","description":"监听WebSocket接受到服务器的消息事件。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnSocketMessageCallbackResult](#onsocketmessagecallbackresult-values)) => void | 是 | - | - | | \n\n#### OnSocketMessageCallbackResult 的属性值 @onsocketmessagecallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | any | 是 | - | | 服务器返回的消息 |\n","returnValue":"","compatibility":"### onSocketMessage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#onsocketmessage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket-global.onSocketMessage)\n"},"closeSocket":{"name":"## closeSocket(options) @closesocket","description":"关闭 WebSocket 连接。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **CloseSocketOptions** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| code | number \\| null | 否 | 1000 | | 一个数字值表示关闭连接的状态号,表示连接被关闭的原因。如果这个参数没有被指定,默认的取值是1000 (表示正常连接关闭) |\n@| reason | string \\| null | 否 | \"\" | | 一个可读的字符串,表示连接被关闭的原因。这个字符串必须是不长于123字节的UTF-8 文本(不是字符) |\n@| success | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n","returnValue":"","compatibility":"### closeSocket 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#closesocket)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket-global.closeSocket)\n"},"onSocketClose":{"name":"## onSocketClose(callback) @onsocketclose","description":"监听WebSocket关闭。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnSocketCloseCallbackResult](#onsocketclosecallbackresult-values)) => void | 是 | - | - | | \n\n#### OnSocketCloseCallbackResult 的属性值 @onsocketclosecallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| code | number | 是 | - | | 一个数字值表示关闭连接的状态号,表示连接被关闭的原因。 |\n| reason | string | 是 | - | | 一个可读的字符串,表示连接被关闭的原因。\t |\n","returnValue":"","compatibility":"### onSocketClose 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#onsocketclose)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket-global.onSocketClose)\n"},"websocket-global":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/websocket-global/websocket-global.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/websocket-global/websocket-global\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n export default {\r\n data() {\r\n return {\r\n connected: false,\r\n connecting: false,\r\n msg: '',\r\n roomId: '',\r\n platform: '',\r\n }\r\n },\r\n computed: {\r\n showMsg() : string {\r\n if (this.connected) {\r\n if (this.msg.length > 0) {\r\n return '收到消息:' + this.msg\r\n } else {\r\n return '等待接收消息'\r\n }\r\n } else {\r\n return '尚未连接'\r\n }\r\n },\r\n },\r\n onLoad() {\r\n this.platform = uni.getSystemInfoSync().platform\r\n },\r\n onUnload() {\r\n uni.closeSocket({\r\n code: 1000,\r\n reason: 'close reason from client',\r\n success: (res : any) => {\r\n console.log('uni.closeSocket success', res)\r\n },\r\n fail: (err : any) => {\r\n console.log('uni.closeSocket fail', err)\r\n },\r\n } as CloseSocketOptions)\r\n uni.hideLoading()\r\n },\r\n methods: {\r\n connect() {\r\n if (this.connected || this.connecting) {\r\n uni.showModal({\r\n content: '正在连接或者已经连接,请勿重复连接',\r\n showCancel: false,\r\n })\r\n return\r\n }\r\n this.connecting = true\r\n uni.showLoading({\r\n title: '连接中...',\r\n })\r\n uni.connectSocket({\r\n url: 'ws://websocket.dcloud.net.cn',\r\n header: null,\r\n protocols: null,\r\n success: (res : any) => {\r\n // 这里是接口调用成功的回调,不是连接成功的回调,请注意\r\n console.log('uni.connectSocket success', res)\r\n },\r\n fail: (err : any) => {\r\n // 这里是接口调用失败的回调,不是连接失败的回调,请注意\r\n console.log('uni.connectSocket fail', err)\r\n },\r\n })\r\n uni.onSocketOpen((res) => {\r\n this.connecting = false\r\n this.connected = true\r\n uni.hideLoading()\r\n\r\n uni.showToast({\r\n icon: 'none',\r\n title: '连接成功',\r\n })\r\n console.log('onOpen', res)\r\n })\r\n uni.onSocketError((err) => {\r\n this.connecting = false\r\n this.connected = false\r\n uni.hideLoading()\r\n\r\n uni.showModal({\r\n content: '连接失败,可能是websocket服务不可用,请稍后再试',\r\n showCancel: false,\r\n })\r\n console.log('onError', err)\r\n })\r\n uni.onSocketMessage((res) => {\r\n this.msg = res.data as string\r\n console.log('onMessage', res)\r\n })\r\n uni.onSocketClose((res) => {\r\n this.connected = false\r\n this.msg = ''\r\n console.log('onClose', res)\r\n })\r\n },\r\n send() {\r\n uni.sendSocketMessage({\r\n data:\r\n 'from ' +\r\n this.platform +\r\n ' : ' +\r\n parseInt((Math.random() * 10000).toString()).toString(),\r\n success: (res : any) => {\r\n console.log(res)\r\n },\r\n fail: (err : any) => {\r\n console.log(err)\r\n },\r\n } as SendSocketMessageOptions)\r\n },\r\n close() {\r\n uni.closeSocket({\r\n code: 1000,\r\n reason: 'close reason from client',\r\n success: (res : any) => {\r\n console.log('uni.closeSocket success', res)\r\n },\r\n fail: (err : any) => {\r\n console.log('uni.closeSocket fail', err)\r\n },\r\n } as CloseSocketOptions)\r\n },\r\n },\r\n }\r\n\n```\n:::"},"getSystemInfo":{"name":"## uni.getSystemInfo(options) @getsysteminfo","description":"异步获取系统信息","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetSystemInfoOptions](#getsysteminfooptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: [GetSystemInfoResult](#getsysteminforesult-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetSystemInfoResult 的属性值 @getsysteminforesult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| SDKVersion | string | 是 | - | | 客户端基础库版本
|\n| appId | string | 是 | - | | `manifest.json` 中应用appid。
|\n| appLanguage | string | 是 | - | | 应用设置的语言。
|\n| appName | string | 是 | - | | `manifest.json` 中应用名称。
|\n| appVersion | string | 是 | - | | `manifest.json` 中应用版本名称。
|\n| appVersionCode | string | 是 | - | | `manifest.json` 中应用版本名号。
|\n| ~~brand~~ | string | 是 | - | | 手机品牌。 **已废弃,仅为了向下兼容保留** |\n| browserName | string | 是 | - | | 浏览器名称。`App` 端是系统 webview 的名字,比如 wkwebview、chrome。小程序端为空
|\n| browserVersion | string | 是 | - | | 浏览器版本、webview 版本。
|\n| deviceId | string | 是 | - | | 设备 ID
|\n| deviceBrand | string | 是 | - | | 设备品牌。如:`apple`、`huawei`。
|\n| deviceModel | string | 是 | - | | 设备型号
|\n| deviceType | \"phone\" \\| \"pad\" \\| \"tv\" \\| \"watch\" \\| \"pc\" \\| \"undefined\" \\| \"car\" \\| \"vr\" \\| \"appliance\" | 是 | - | | 设备类型。
|\n| devicePixelRatio | number | 是 | - | | 设备像素比
|\n| deviceOrientation | \"portrait\" \\| \"landscape\" | 是 | - | | 设备方向。 |\n| ~~language~~ | string | 是 | - | | 程序设置的语言 **已废弃,仅为了向下兼容保留** |\n| ~~model~~ | string | 是 | - | | 手机型号 **已废弃,仅为了向下兼容保留** |\n| osName | \"ios\" \\| \"android\" \\| \"macos\" \\| \"windows\" \\| \"linux\" | 是 | - | | 系统名称\t
|\n| osVersion | string | 是 | - | | 操作系统版本。如 ios 版本,andriod 版本
|\n| osLanguage | string | 是 | - | | 操作系统语言
|\n| osTheme | \"light\" \\| \"dark\" | 否 | - | | 操作系统主题
|\n| ~~pixelRatio~~ | number | 是 | - | | 设备像素比 **已废弃,仅为了向下兼容保留** |\n| ~~platform~~ | \"ios\" \\| \"android\" \\| \"mac\" \\| \"windows\" \\| \"linux\" | 是 | - | | 客户端平台 **已废弃,仅为了向下兼容保留** |\n| screenWidth | number | 是 | - | | 屏幕宽度,单位为px
|\n| screenHeight | number | 是 | - | | 屏幕高度,单位为px
|\n| statusBarHeight | number | 是 | - | | 状态栏的高度,单位为px
|\n| ~~system~~ | string | 是 | - | | 操作系统版本 **已废弃,仅为了向下兼容保留** |\n| safeArea | **SafeArea** | 是 | - | | 在竖屏正方向下的安全区域
|\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| left | number | 是 | - | | 安全区域左上角横坐标,单位为px
|\n@| right | number | 是 | - | | 安全区域右下角横坐标,单位为px
|\n@| top | number | 是 | - | | 安全区域左上角纵坐标,单位为px
|\n@| bottom | number | 是 | - | | 安全区域右下角纵坐标,单位为px
|\n@| width | number | 是 | - | | 安全区域的宽度,单位为px
|\n@| height | number | 是 | - | | 安全区域的高度,单位为px
|\n| safeAreaInsets | **SafeAreaInsets** | 是 | - | | 在竖屏正方向下的安全区域插入位置
|\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| left | number | 是 | - | | 安全区域左侧插入位置(距离左边边界距离),单位为px
|\n@| right | number | 是 | - | | 安全区域右侧插入位置(距离右边边界距离),单位为px
|\n@| top | number | 是 | - | | 安全区顶部插入位置(距离顶部边界距离),单位为px
|\n@| bottom | number | 是 | - | | 安全区域底部插入位置(距离底部边界距离),单位为px
|\n| ua | string | 是 | - | | 用户标识。小程序端为空
|\n| ~~uniCompileVersion~~ | string | 是 | - | | uni 编译器版本。 **已废弃,仅为了向下兼容保留** |\n| uniCompilerVersion | string | 是 | - | | uni 编译器版本。
|\n| uniPlatform | \"app\" \\| \"web\" \\| \"mp-weixin\" \\| \"mp-alipay\" \\| \"mp-baidu\" \\| \"mp-toutiao\" \\| \"mp-lark\" \\| \"mp-qq\" \\| \"mp-kuaishou\" \\| \"mp-jd\" \\| \"mp-360\" \\| \"quickapp-webview\" \\| \"quickapp-webview-union\" \\| \"quickapp-webview-huawei\" | 是 | - | | uni-app 运行平台,与条件编译平台相同。
|\n| uniRuntimeVersion | string | 是 | - | | uni 运行时版本。
|\n| ~~uniCompileVersionCode~~ | number | 是 | - | | uni 编译器版本号。 **已废弃,仅为了向下兼容保留** |\n| uniCompilerVersionCode | number | 是 | - | | uni 编译器版本号。
|\n| uniRuntimeVersionCode | number | 是 | - | | uni 运行时版本号。
|\n| ~~version~~ | string | 是 | - | | 引擎版本号。 **已废弃,仅为了向下兼容保留** |\n| romName | string | 是 | - | | rom 名称。Android 部分机型获取不到值。iOS 恒为 `ios`
|\n| romVersion | string | 是 | - | | rom 版本号。Android 部分机型获取不到值。iOS 为操作系统版本号(同 `osVersion`)。
|\n| windowWidth | number | 是 | - | | 可使用窗口宽度,单位为px
|\n| windowHeight | number | 是 | - | | 可使用窗口高度,单位为px
|\n| windowTop | number | 是 | - | | 内容区域距离顶部的距离(同CSS变量 `--window-top`),单位为px
|\n| windowBottom | number | 是 | - | | 内容区域距离底部的距离(同CSS变量 `--window-bottom`),单位为px
|\n| osAndroidAPILevel | number \\| null | 否 | - | | Android 系统API库的版本。
|\n| appTheme | \"light\" \\| \"dark\" \\| \"auto\" | 否 | - | | 当前App的主题
|\n","returnValue":"","compatibility":"### getSystemInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/system/info?id=getsysteminfo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.get-system-info.getSystemInfo)\n"},"getSystemInfoSync":{"name":"## uni.getSystemInfoSync() @getsysteminfosync","description":"同步获取系统信息","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetSystemInfoResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SDKVersion | string | 是 | - | | 客户端基础库版本
|\n@| appId | string | 是 | - | | `manifest.json` 中应用appid。
|\n@| appLanguage | string | 是 | - | | 应用设置的语言。
|\n@| appName | string | 是 | - | | `manifest.json` 中应用名称。
|\n@| appVersion | string | 是 | - | | `manifest.json` 中应用版本名称。
|\n@| appVersionCode | string | 是 | - | | `manifest.json` 中应用版本名号。
|\n@| ~~brand~~ | string | 是 | - | | 手机品牌。 **已废弃,仅为了向下兼容保留** |\n@| browserName | string | 是 | - | | 浏览器名称。`App` 端是系统 webview 的名字,比如 wkwebview、chrome。小程序端为空
|\n@| browserVersion | string | 是 | - | | 浏览器版本、webview 版本。
|\n@| deviceId | string | 是 | - | | 设备 ID
|\n@| deviceBrand | string | 是 | - | | 设备品牌。如:`apple`、`huawei`。
|\n@| deviceModel | string | 是 | - | | 设备型号
|\n@| deviceType | \"phone\" \\| \"pad\" \\| \"tv\" \\| \"watch\" \\| \"pc\" \\| \"null\" \\| \"car\" \\| \"vr\" \\| \"appliance\" | 是 | - | | 设备类型。
|\n@| devicePixelRatio | number | 是 | - | | 设备像素比
|\n@| deviceOrientation | \"portrait\" \\| \"landscape\" | 是 | - | | 设备方向。 |\n@| ~~language~~ | string | 是 | - | | 程序设置的语言 **已废弃,仅为了向下兼容保留** |\n@| ~~model~~ | string | 是 | - | | 手机型号 **已废弃,仅为了向下兼容保留** |\n@| osName | \"ios\" \\| \"android\" \\| \"macos\" \\| \"windows\" \\| \"linux\" | 是 | - | | 系统名称\t
|\n@| osVersion | string | 是 | - | | 操作系统版本。如 ios 版本,andriod 版本
|\n@| osLanguage | string | 是 | - | | 操作系统语言
|\n@| osTheme | \"light\" \\| \"dark\" | 否 | - | | 操作系统主题
|\n@| ~~pixelRatio~~ | number | 是 | - | | 设备像素比 **已废弃,仅为了向下兼容保留** |\n@| ~~platform~~ | \"ios\" \\| \"android\" \\| \"mac\" \\| \"windows\" \\| \"linux\" | 是 | - | | 客户端平台 **已废弃,仅为了向下兼容保留** |\n@| screenWidth | number | 是 | - | | 屏幕宽度,单位为px
|\n@| screenHeight | number | 是 | - | | 屏幕高度,单位为px
|\n@| statusBarHeight | number | 是 | - | | 状态栏的高度,单位为px
|\n@| ~~system~~ | string | 是 | - | | 操作系统版本 **已废弃,仅为了向下兼容保留** |\n@| safeArea | **SafeArea** | 是 | - | | 在竖屏正方向下的安全区域
|\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| left | number | 是 | - | | 安全区域左上角横坐标,单位为px
|\n@@| right | number | 是 | - | | 安全区域右下角横坐标,单位为px
|\n@@| top | number | 是 | - | | 安全区域左上角纵坐标,单位为px
|\n@@| bottom | number | 是 | - | | 安全区域右下角纵坐标,单位为px
|\n@@| width | number | 是 | - | | 安全区域的宽度,单位为px
|\n@@| height | number | 是 | - | | 安全区域的高度,单位为px
|\n@| safeAreaInsets | **SafeAreaInsets** | 是 | - | | 在竖屏正方向下的安全区域插入位置
|\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| left | number | 是 | - | | 安全区域左侧插入位置(距离左边边界距离),单位为px
|\n@@| right | number | 是 | - | | 安全区域右侧插入位置(距离右边边界距离),单位为px
|\n@@| top | number | 是 | - | | 安全区顶部插入位置(距离顶部边界距离),单位为px
|\n@@| bottom | number | 是 | - | | 安全区域底部插入位置(距离底部边界距离),单位为px
|\n@| ua | string | 是 | - | | 用户标识。小程序端为空
|\n@| ~~uniCompileVersion~~ | string | 是 | - | | uni 编译器版本。 **已废弃,仅为了向下兼容保留** |\n@| uniCompilerVersion | string | 是 | - | | uni 编译器版本。
|\n@| uniPlatform | \"app\" \\| \"web\" \\| \"mp-weixin\" \\| \"mp-alipay\" \\| \"mp-baidu\" \\| \"mp-toutiao\" \\| \"mp-lark\" \\| \"mp-qq\" \\| \"mp-kuaishou\" \\| \"mp-jd\" \\| \"mp-360\" \\| \"quickapp-webview\" \\| \"quickapp-webview-union\" \\| \"quickapp-webview-huawei\" | 是 | - | | uni-app 运行平台,与条件编译平台相同。
|\n@| uniRuntimeVersion | string | 是 | - | | uni 运行时版本。
|\n@| ~~uniCompileVersionCode~~ | number | 是 | - | | uni 编译器版本号。 **已废弃,仅为了向下兼容保留** |\n@| uniCompilerVersionCode | number | 是 | - | | uni 编译器版本号。
|\n@| uniRuntimeVersionCode | number | 是 | - | | uni 运行时版本号。
|\n@| ~~version~~ | string | 是 | - | | 引擎版本号。 **已废弃,仅为了向下兼容保留** |\n@| romName | string | 是 | - | | rom 名称。Android 部分机型获取不到值。iOS 恒为 `ios`
|\n@| romVersion | string | 是 | - | | rom 版本号。Android 部分机型获取不到值。iOS 为操作系统版本号(同 `osVersion`)。
|\n@| windowWidth | number | 是 | - | | 可使用窗口宽度,单位为px
|\n@| windowHeight | number | 是 | - | | 可使用窗口高度,单位为px
|\n@| windowTop | number | 是 | - | | 内容区域距离顶部的距离(同CSS变量 `--window-top`),单位为px
|\n@| windowBottom | number | 是 | - | | 内容区域距离底部的距离(同CSS变量 `--window-bottom`),单位为px
|\n@| osAndroidAPILevel | number \\| null | 否 | - | | Android 系统API库的版本。
|\n@| appTheme | \"light\" \\| \"dark\" \\| \"auto\" | 否 | - | | 当前App的主题
| \n","compatibility":"### getSystemInfoSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/system/info?id=getsysteminfosync)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.get-system-info.getSystemInfoSync)\n"},"get-system-info":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-system-info/get-system-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-system-info/get-system-info\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n type Item = {\r\n label : string,\r\n value : string,\r\n }\r\n export default {\r\n data() {\r\n return {\r\n title: 'getSystemInfo',\r\n items: [] as Item[],\r\n }\r\n },\r\n onUnload: function () {\r\n },\r\n methods: {\r\n getSystemInfo: function () {\r\n uni.getSystemInfo({\r\n success: (res) => {\r\n this.items = [] as Item[];\n const res_str = JSON.stringify(res);\n const res_obj = JSON.parseObject(res_str);\n const res_map = res_obj!.toMap();\n let keys = [] as string[]\n res_map.forEach((_, key) => {\n keys.push(key);\n });\n keys.sort().forEach( key => {\n const value = res[key];\n if(value != null){\n const item = {\n \tlabel: key,\n \tvalue: \"\" + ((typeof value == \"object\")? JSON.stringify(value) : value)\n } as Item;\n this.items.push(item);\n }\n });\r\n },\r\n })\r\n },\r\n getSystemInfoSync: function () {\r\n this.items = [] as Item[];\r\n const res = uni.getSystemInfoSync()\n const res_str = JSON.stringify(res);\n const res_obj = JSON.parseObject(res_str);\n const res_map = res_obj!.toMap();\n let keys = [] as string[]\n res_map.forEach((_, key) => {\n keys.push(key);\n });\n keys.sort().forEach( key => {\n const value = res[key];\n if(value != null){\n const item = {\n \tlabel: key,\n \tvalue: \"\" + ((typeof value == \"object\")? JSON.stringify(value) : value)\n } as Item;\n this.items.push(item);\n }\n });\r\n },\r\n //自动化测试例专用\r\n jest_getSystemInfo() : GetSystemInfoResult {\r\n return uni.getSystemInfoSync();\r\n },\r\n }\r\n }\r\n\n```\n:::"},"getDeviceInfo":{"name":"## uni.getDeviceInfo(options?) @getdeviceinfo","description":"获取设备信息","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **GetDeviceInfoOptions** | 否 | 包含所有字段的过滤对象 | - | \\[options=包含所有字段的过滤对象]过滤的字段对象, 不传参数默认为获取全部字段。 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filter | Array\\ | 是 | - | - | 过滤字段的字符串数组,假如要获取指定字段,传入此数组。 | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetDeviceInfoResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| ~~brand~~ | string | 否 | - | | 设备品牌 **已废弃,仅为了向下兼容保留** |\n@| deviceBrand | string | 否 | - | | 设备品牌
|\n@| deviceId | string | 否 | - | | 设备 id 。由 uni-app 框架生成并存储,清空 Storage 会导致改变
|\n@| ~~model~~ | string | 否 | - | | 设备型号\t **已废弃,仅为了向下兼容保留** |\n@| deviceModel | string | 否 | - | | 设备型号\t
|\n@| deviceType | \"phone\" \\| \"pad\" \\| \"tv\" \\| \"watch\" \\| \"pc\" \\| \"null\" \\| \"car\" \\| \"vr\" \\| \"appliance\" | 否 | - | | 设备类型phone、pad、pc\t
|\n@| deviceOrientation | string | 否 | - | | 设备方向 竖屏 portrait、横屏 landscape\t
|\n@| devicePixelRatio | number | 否 | - | | 设备像素比\t
|\n@| system | string | 否 | - | | 操作系统及版本\t
|\n@| platform | \"ios\" \\| \"android\" \\| \"mac\" \\| \"windows\" \\| \"linux\" | 否 | - | | 客户端平台\t
|\n@| isRoot | boolean | 否 | - | | 是否root。iOS 为是否越狱
|\n@| isSimulator | boolean | 否 | - | | 是否是模拟器
|\n@| isUSBDebugging | boolean | 否 | - | | adb是否开启
|\n@| osName | \"ios\" \\| \"android\" \\| \"macos\" \\| \"windows\" \\| \"linux\" | 否 | - | | 系统名称\t
|\n@| osVersion | string \\| null | 否 | - | | 操作系统版本。如 ios 版本,andriod 版本
|\n@| osLanguage | string \\| null | 否 | - | | 操作系统语言
|\n@| osTheme | \"light\" \\| \"dark\" | 否 | - | | 操作系统主题
|\n@| osAndroidAPILevel | number \\| null | 否 | - | | Android 系统API库的版本。
|\n@| romName | string \\| null | 否 | - | | rom 名称。Android 部分机型获取不到值。iOS 恒为 `ios`
|\n@| romVersion | string \\| null | 否 | - | | rom 版本号。Android 部分机型获取不到值。iOS 为操作系统版本号(同 `osVersion`)。
| \n","compatibility":"### getDeviceInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/getDeviceInfo.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.get-device-info)\n"},"get-device-info":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-device-info/get-device-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-device-info/get-device-info\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { setDevicePixelRatio } from '@/store/index.uts'\r\n\r\n type Item = {\r\n label : string,\r\n value : string,\r\n }\r\n export default {\r\n data() {\r\n return {\r\n title: 'getDeviceInfo',\r\n items: [] as Item[],\r\n }\r\n },\r\n onUnload: function () {\r\n },\r\n methods: {\r\n getDeviceInfo: function () {\r\n const res = uni.getDeviceInfo();\r\n // 获取像素比, 供截图对比使用\r\n setDevicePixelRatio(res.devicePixelRatio !== null ? res.devicePixelRatio! : 1)\r\n this.items = [] as Item[];\r\n\r\n const res_str = JSON.stringify(res);\r\n const res_obj = JSON.parseObject(res_str);\r\n const res_map = res_obj!.toMap();\r\n let keys = [] as string[]\r\n res_map.forEach((_, key) => {\r\n keys.push(key);\r\n });\r\n keys.sort().forEach(key => {\r\n const value = res[key];\r\n if (value != null) {\r\n const item = {\r\n label: key,\r\n value: \"\" + ((typeof value == \"object\") ? JSON.stringify(value) : value)\r\n } as Item;\r\n this.items.push(item);\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\n```\n:::"},"getWindowInfo":{"name":"## uni.getWindowInfo() @getwindowinfo","description":"同步获取窗口信息","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetWindowInfoResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| pixelRatio | number | 是 | - | | 设备像素比
|\n@| screenWidth | number | 是 | - | | 屏幕宽度,单位为px
|\n@| screenHeight | number | 是 | - | | 屏幕高度,单位为px
|\n@| windowWidth | number | 是 | - | | 可使用窗口宽度,单位为px
|\n@| windowHeight | number | 是 | - | | 可使用窗口高度,单位为px
|\n@| statusBarHeight | number | 是 | - | | 状态栏的高度,单位为px
|\n@| windowTop | number | 是 | - | | 内容区域距离顶部的距离(同CSS变量 `--window-top`),单位为px
|\n@| windowBottom | number | 是 | - | | 内容区域距离底部的距离(同CSS变量 `--window-bottom`),单位为px
|\n@| safeArea | **SafeArea** | 是 | - | | 安全区域在屏幕中的位置信息
|\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| left | number | 是 | - | | 安全区域左上角横坐标,单位为px
|\n@@| right | number | 是 | - | | 安全区域右下角横坐标,单位为px
|\n@@| top | number | 是 | - | | 安全区域左上角纵坐标,单位为px
|\n@@| bottom | number | 是 | - | | 安全区域右下角纵坐标,单位为px
|\n@@| width | number | 是 | - | | 安全区域的宽度,单位为px
|\n@@| height | number | 是 | - | | 安全区域的高度,单位为px
|\n@| safeAreaInsets | **SafeAreaInsets** | 是 | - | | 安全区域插入位置(与屏幕边界的距离)信息
|\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| left | number | 是 | - | | 安全区域左侧插入位置(距离左边边界距离),单位为px
|\n@@| right | number | 是 | - | | 安全区域右侧插入位置(距离右边边界距离),单位为px
|\n@@| top | number | 是 | - | | 安全区顶部插入位置(距离顶部边界距离),单位为px
|\n@@| bottom | number | 是 | - | | 安全区域底部插入位置(距离底部边界距离),单位为px
|\n@| screenTop | number | 是 | - | | 窗口上边缘的 y 值,单位为px
| \n","compatibility":"### getWindowInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/system/getWindowInfo.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.get-window-info)\n"},"get-window-info":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-window-info/get-window-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-window-info/get-window-info\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { setStatusBarHeight, setSafeArea } from '@/store/index.uts'\r\n // #ifdef APP-ANDROID\r\n import type { SafeArea } from '@/store/index.uts'\r\n // #endif\r\n\r\n type Item = {\r\n label : string,\r\n value : string,\r\n }\r\n export default {\r\n data() {\r\n return {\r\n title: 'getWindowInfo',\r\n items: [] as Item[],\r\n }\r\n },\r\n onUnload: function () {\r\n },\r\n onReady() {\r\n this.getWindowInfo()\r\n },\r\n methods: {\r\n getWindowInfo: function () {\r\n const res = uni.getWindowInfo();\r\n // 获取状态栏高度, 供截图对比使用\r\n setStatusBarHeight(res.statusBarHeight);\r\n // 获取安全区信息,供截图使用\r\n // #ifdef APP-ANDROID\r\n setSafeArea({\r\n top: res.safeArea.top,\r\n left: res.safeArea.left,\r\n right: res.safeArea.right,\r\n bottom: res.safeArea.bottom,\r\n width: res.safeArea.width,\r\n height: res.safeArea.height,\r\n } as SafeArea);\r\n // #endif\r\n // #ifdef APP-IOS\r\n setSafeArea({\r\n top: res.safeArea.top,\r\n left: res.safeArea.left,\r\n right: res.safeArea.right,\r\n bottom: res.safeArea.bottom,\r\n width: res.safeArea.width,\r\n height: res.safeArea.height,\r\n });\r\n // #endif\r\n this.items = [] as Item[];\r\n\r\n const res_str = JSON.stringify(res);\r\n const res_obj = JSON.parseObject(res_str);\r\n const res_map = res_obj!.toMap();\r\n let keys = [] as string[]\r\n res_map.forEach((_, key) => {\r\n keys.push(key);\r\n });\r\n keys.sort().forEach(key => {\r\n const value = res[key];\r\n if (value != null) {\r\n const item = {\r\n label: key,\r\n value: \"\" + ((typeof value == \"object\") ? JSON.stringify(value) : value)\r\n } as Item;\r\n this.items.push(item);\r\n }\r\n });\r\n },\r\n //自动化测试例专用\r\n jest_getWindowInfo() : GetWindowInfoResult {\r\n return uni.getWindowInfo();\r\n },\r\n }\r\n }\r\n\n```\n:::"},"getAppBaseInfo":{"name":"## uni.getAppBaseInfo(options?) @getappbaseinfo","description":"获取app基本信息","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **GetAppBaseInfoOptions** | 否 | 包含所有字段的过滤对象 | - | \\[options=包含所有字段的过滤对象] 过滤的字段对象, 不传参数默认为获取全部字段。 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filter | Array\\ | 是 | - | - | 过滤字段的字符串数组,假如要获取指定字段,传入此数组。 | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetAppBaseInfoResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| appId | string | 否 | - | | manifest.json 中应用appid,即DCloud appid。\t
|\n@| appName | string | 否 | - | | `manifest.json` 中应用名称。
|\n@| appVersion | string | 否 | - | | `manifest.json` 中应用版本名称。
|\n@| appVersionCode | string | 否 | - | | `manifest.json` 中应用版本名号。
|\n@| appLanguage | string | 否 | - | | 应用设置的语言en、zh-Hans、zh-Hant、fr、es\t
|\n@| language | string | 否 | - | | 应用设置的语言\t
|\n@| ~~version~~ | string | 否 | - | | 引擎版本号。已废弃,仅为了向下兼容保留 **已废弃,仅为了向下兼容保留** |\n@| isUniAppX | boolean | 否 | - | | 是否uni-app x
|\n@| ~~uniCompileVersion~~ | string | 否 | - | | uni 编译器版本 **已废弃,仅为了向下兼容保留** |\n@| uniCompilerVersion | string | 否 | - | | uni 编译器版本
|\n@| uniPlatform | \"app\" \\| \"web\" \\| \"mp-weixin\" \\| \"mp-alipay\" \\| \"mp-baidu\" \\| \"mp-toutiao\" \\| \"mp-lark\" \\| \"mp-qq\" \\| \"mp-kuaishou\" \\| \"mp-jd\" \\| \"mp-360\" \\| \"quickapp-webview\" \\| \"quickapp-webview-union\" \\| \"quickapp-webview-huawei\" | 否 | - | | uni-app 运行平台。
|\n@| uniRuntimeVersion | string | 否 | - | | uni 运行时版本
|\n@| ~~uniCompileVersionCode~~ | number | 否 | - | | uni 编译器版本号 **已废弃,仅为了向下兼容保留** |\n@| uniCompilerVersionCode | number | 否 | - | | uni 编译器版本号
|\n@| uniRuntimeVersionCode | number | 否 | - | | uni 运行时版本号
|\n@| packageName | string | 否 | - | | Android的包名
|\n@| bundleId | string | 否 | - | | iOS的bundleId
|\n@| signature | string | 否 | - | | Android: 应用签名证书的SHA1值(全部为小写,中间不包含“:”)。 为了保证应用的安全性,请使用自己生成的证书(不要使用公共测试证书)。
iOS: 应用签名证书中绑定的Bundle ID(AppleID)的md5值(全部为小写)。
|\n@| appTheme | \"light\" \\| \"dark\" \\| \"auto\" | 否 | - | | 当前App的主题
| \n","compatibility":"### getAppBaseInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/getAppBaseInfo.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.get-app-base-info)\n"},"get-app-base-info":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-app-base-info/get-app-base-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-app-base-info/get-app-base-info\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n```\n>Script\n```uts\n\n\ttype Item = {\n\t\tlabel : string,\n\t\tvalue : string,\n\t}\n\texport default {\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\ttitle: 'getAppBaseInfo',\n\t\t\t\titems: [] as Item[],\r\n\t\t\t}\r\n\t\t},\r\n\t\tonUnload:function(){\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tgetAppBaseInfo: function () {\n\t\t\t\tconst res = uni.getAppBaseInfo();\n const res_str = JSON.stringify(res);\n const res_obj = JSON.parseObject(res_str);\n const res_map = res_obj!.toMap();\n let keys = [] as string[]\n res_map.forEach((_, key) => {\n keys.push(key);\n });\n\n this.items = [] as Item[];\n keys.sort().forEach( key => {\n const value = res[key];\n if(value != null){\n const item = {\n \tlabel: key,\n \tvalue: \"\" + ((typeof value == \"object\")? JSON.stringify(value) : value)\n } as Item;\n this.items.push(item);\n }\n });\n\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\n```\n:::"},"getAppAuthorizeSetting":{"name":"## uni.getAppAuthorizeSetting() @getappauthorizesetting","description":"获取 APP 授权设置。","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetAppAuthorizeSettingResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| albumAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 否 | - | | 允许 App 使用相册的开关(仅 iOS 支持)
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: 当前应用没有配置相册权限描述 |\n@| bluetoothAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 否 | - | | 允许 App 使用蓝牙的开关(仅 iOS 支持)
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: Android平台没有该值;iOS平台:当前应用没有配置蓝牙权限描述 |\n@| cameraAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 是 | - | | 允许 App 使用摄像头的开关
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: Android平台:表示没有配置 `android.permission.CAMERA` 权限,[权限配置详情](https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-android.html#permissions);iOS平台:当前应用没有配置相机权限描述 |\n@| locationAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 是 | - | | 允许 App 使用定位的开关
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: Android平台:表示没有配置 `android.permission.ACCESS_COARSE_LOCATION` 权限,[权限配置详情](https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-android.html#permissions);iOS平台:当前应用没有配置定位权限描述 |\n@| locationAccuracy | \"reduced\" \\| \"full\" \\| \"unsupported\" | 否 | - | | 定位准确度。
- reduced: 模糊定位
- full: 精准定位
- unsupported: 不支持(包括用户拒绝定位权限和没有包含定位权限描述) |\n@| locationReducedAccuracy | boolean \\| null | 否 | - | | 定位准确度(推荐使用 locationAccuracy 属性)。true 表示模糊定位,false 表示精确定位(仅 iOS 支持) |\n@| microphoneAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 是 | - | | 允许 App 使用麦克风的开关
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: Android平台:表示没有配置 `android.permission.RECORD_AUDIO` 权限,[权限配置详情](https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-android.html#permissions);iOS平台:当前应用没有配置麦克风权限描述 |\n@| notificationAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 是 | - | | 允许 App 通知的开关
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: Android平台没有该值;iOS平台:没有包含推送权限描述 |\n@| notificationAlertAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 否 | - | | 允许 App 通知带有提醒的开关(仅 iOS 支持)
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: 当前应用没有配置推送权限描述 |\n@| notificationBadgeAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 否 | - | | 允许 App 通知带有标记的开关(仅 iOS 支持)
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: 当前应用没有配置推送权限描述 |\n@| notificationSoundAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 否 | - | | 允许 App 通知带有声音的开关(仅 iOS 支持)
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: 当前应用没有配置推送权限描述 | \n","compatibility":"### getAppAuthorizeSetting 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/system/getappauthorizesetting)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.get-app-authorize-setting)\n"},"get-app-authorize-setting":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-app-authorize-setting/get-app-authorize-setting.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\r\n\r\n\r\n\n\n```"},"getSystemSetting":{"name":"## uni.getSystemSetting() @getsystemsetting","description":"获取系统设置","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetSystemSettingResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| bluetoothEnabled | boolean | 否 | - | | 蓝牙是否开启
|\n@| bluetoothError | string | 否 | - | | 蓝牙的报错信息
|\n@| locationEnabled | boolean | 是 | - | | 位置是否开启
|\n@| wifiEnabled | boolean | 否 | - | | wifi是否开启
|\n@| wifiError | string | 否 | - | | wifi的报错信息
|\n@| deviceOrientation | \"portrait\" \\| \"landscape\" | 是 | - | | 设备方向
| \n","compatibility":"### getSystemSetting 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/getsystemsetting.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.get-system-setting)\n"},"get-system-setting":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-system-setting/get-system-setting.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\r\n\r\n\r\n\n\n```"},"installApk":{"name":"## uni.installApk(options) @installapk","description":"安装apk","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [InstallApkOptions](#installapkoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | string | 是 | - | - | apk文件地址 |\n@| success | (res: [InstallApkSuccess](#installapksuccess-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (err: [InstallApkFail](#installapkfail-values)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### InstallApkSuccess 的属性值 @installapksuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | 安装成功消息 |\n\n##### InstallApkFail 的属性值 @installapkfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | 错误码
- 1300002 找不到文件 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### installApk 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.94 | x |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.install-apk)\n"},"install-apk":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/install-apk/install-apk.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\r\n\r\n\n\n```"},"getPushClientId":{"name":"## uni.getPushClientId(options) @getpushclientid","description":"获取客户端唯一的推送标识","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetPushClientIdOptions](#getpushclientidoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: [GetPushClientIdSuccess](#getpushclientidsuccess-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetPushClientIdSuccess 的属性值 @getpushclientidsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| cid | string | 是 | - | | 个推客户端推送id,对应uni-id-device表的push_clientid
|\n| errMsg | string | 是 | - | | 错误描述
|\n","returnValue":"","compatibility":"### getPushClientId 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/plugins/push.html#getpushclientid)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.push.uni-push.getPushClientId)\n"},"onPushMessage":{"name":"## uni.onPushMessage(callback) @onpushmessage","description":"启动监听推送消息事件","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnPushMessageCallbackResult](#onpushmessagecallbackresult-values)) => void | 是 | - | - | | \n\n#### OnPushMessageCallbackResult 的属性值 @onpushmessagecallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | \"click\" \\| \"receive\" | 是 | - | | 事件类型
- click 从系统推送服务点击消息启动应用事件
- receive 应用从推送服务器接收到推送消息事件 |\n| data | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) | 是 | - | | 消息内容
|\n","returnValue":"","compatibility":"### onPushMessage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/plugins/push.html#onpushmessage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.push.uni-push.onPushMessage)\n"},"offPushMessage":{"name":"## uni.offPushMessage(callback) @offpushmessage","description":"关闭推送消息监听事件,iOS端调用会关闭所有监听。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnPushMessageCallbackResult](#onpushmessagecallbackresult-values)) => void | 是 | - | - | | \n\n#### OnPushMessageCallbackResult 的属性值 @onpushmessagecallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | \"click\" \\| \"receive\" | 是 | - | | 事件类型
- click 从系统推送服务点击消息启动应用事件
- receive 应用从推送服务器接收到推送消息事件 |\n| data | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) | 是 | - | | 消息内容
|\n","returnValue":"","compatibility":"### offPushMessage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/plugins/push.html#offpushmessage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.push.uni-push.offPushMessage)\n"},"getChannelManager":{"name":"## uni.getChannelManager() @getchannelmanager","description":"获取通知渠道管理器,Android 8系统以上才可以设置通知渠道,Android 8系统以下返回null。","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [ChannelManager](#channelmanager-values) |\n\n#### ChannelManager 的方法 @channelmanager-values \n\n#### setPushChannel(options) @setpushchannel\n设置推送渠道
\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **SetPushChannelOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| soundName | string \\| null | 否 | null | - | 添加的声音文件,注意raw目录下必须要有 ,不传此字段将使用默认铃音。 |\n@| channelId | string | 是 | - | - | 通知渠道id |\n@| channelDesc | string | 是 | - | - | 通知渠道描述 |\n@| enableLights | boolean \\| null | 否 | false | - | 呼吸灯闪烁 |\n@| enableVibration | boolean \\| null | 否 | false | - | 震动 |\n@| importance | number \\| null | 否 | 3 | - | 通知的重要性级别,可选范围IMPORTANCE_LOW:2、IMPORTANCE_DEFAULT:3、IMPORTANCE_HIGH:4 。 |\n@| lockscreenVisibility | number \\| null | 否 | -1000 | - | 锁屏可见性,可选范围VISIBILITY_PRIVATE:0、VISIBILITY_PUBLIC:1、VISIBILITY_SECRET:-1、VISIBILITY_NO_OVERRIDE:-1000。 | \n\n\n##### setPushChannel 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | x |\n\n\n#### getAllChannels() @getallchannels\n获取当前应用注册的所有的通知渠道。
\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Array\\ |\n \n\n##### getAllChannels 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | x |\n\n \n","compatibility":"### getChannelManager 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | x |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.push.uni-push.getChannelManager)\n"},"createPushMessage":{"name":"## uni.createPushMessage(options) @createpushmessage","description":"创建本地通知栏消息","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **CreatePushMessageOptions** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| cover | boolean \\| null | 否 | false | | 是否覆盖上一次提示的消息 |\n@| delay | number \\| null | 否 | 0 | | 提示消息延迟显示的时间,单位为s |\n@| icon | string \\| null | 否 | null | | 推送消息的图标 |\n@| sound | string \\| null | 否 | \"system\" | | 推送消息的提示音
- system: 使用系统通知提示音(默认值)
- none: 不使用提示音 |\n@| title | string \\| null | 否 | App的名称 | | 推送消息的标题 |\n@| content | string | 是 | - | | 消息显示的内容,在系统通知中心中显示的文本内容
|\n@| payload | any \\| null | 否 | null | | 消息承载的数据,可根据业务逻辑自定义数据格式 |\n@| when | number \\| null | 否 | 当前时间 | | 消息上显示的提示时间 |\n@| channelId | string \\| null | 否 | \"DcloudChannelID\" | | 渠道id |\n@| category | string \\| null | 否 | null | | 通知类别 |\n@| success | (result: CreatePushMessageSuccess) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n","returnValue":"","compatibility":"### createPushMessage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/plugins/push.html#createpushmessage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.push.uni-push.createPushMessage)\n"},"getBatteryInfo":{"name":"## uni.getBatteryInfo(options) @getbatteryinfo","description":"获取电池电量信息

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-getbatteryinfo](https://ext.dcloud.net.cn/plugin?name=uni-getbatteryinfo)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetBatteryInfoOptions](#getbatteryinfooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [GetBatteryInfoSuccess](#getbatteryinfosuccess-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) |\n@| fail | (res: UniError) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void | 否 | - | - | 接口调用成功的回调 | \n\n##### GetBatteryInfoSuccess 的属性值 @getbatteryinfosuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n| level | number | 是 | - | - | 设备电量,范围1 - 100 |\n| isCharging | boolean | 是 | - | - | 是否正在充电中 |\n","returnValue":"","compatibility":"### getBatteryInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.get-battery-info.getBatteryInfo)\n"},"getBatteryInfoSync":{"name":"## uni.getBatteryInfoSync() @getbatteryinfosync","description":"同步获取电池电量信息

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-getbatteryinfo](https://ext.dcloud.net.cn/plugin?name=uni-getbatteryinfo)
","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetBatteryInfoResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| level | number | 是 | - | - | 设备电量,范围1 - 100 |\n@| isCharging | boolean | 是 | - | - | 是否正在充电中 | \n","compatibility":"### getBatteryInfoSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.get-battery-info.getBatteryInfoSync)\n"},"get-battery-info":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-battery-info/get-battery-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-battery-info/get-battery-info\n>Template\n```vue\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n level: 0,\n isCharging: false\n }\n },\n onLoad() {\n try {\n uni.getBatteryInfo({\n success: res => {\n this.level = res.level;\n this.isCharging = res.isCharging;\n }\n });\n } catch (e) {\n console.error((e as Error).message);\n uni.showModal({\n content: (e as Error).message,\n showCancel: false\n });\n }\n }\n }\n\n```\n:::"},"startWifi":{"name":"## uni.startWifi(option) @startwifi","description":"初始化Wi-Fi模块

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | [WifiOption](#wifioption-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [UniWifiResult](#uniwifiresult-values)) => void | 否 | - | - | - |\n@| fail | (res: UniError) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### UniWifiResult 的属性值 @uniwifiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n| wifi | **UniWifiInfo** \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 是 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| secure | boolean | 否 | - | - | - |\n@| signalStrength | number | 否 | - | - | - |\n@| frequency | number | 否 | - | - | - |\n","returnValue":"","compatibility":"### startWifi 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#startwifi)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.startWifi)\n"},"stopWifi":{"name":"## uni.stopWifi(option) @stopwifi","description":"关闭 Wi-Fi 模块

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | [WifiOption](#wifioption-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [UniWifiResult](#uniwifiresult-values)) => void | 否 | - | - | - |\n@| fail | (res: UniError) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### UniWifiResult 的属性值 @uniwifiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n| wifi | **UniWifiInfo** \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 是 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| secure | boolean | 否 | - | - | - |\n@| signalStrength | number | 否 | - | - | - |\n@| frequency | number | 否 | - | - | - |\n","returnValue":"","compatibility":"### stopWifi 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | x | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#stopwifi)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.stopWifi)\n"},"connectWifi":{"name":"## uni.connectWifi(option) @connectwifi","description":"","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | [WifiConnectOption](#wificonnectoption-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 否 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| password | string | 否 | - | - | - |\n@| maunal | boolean | 否 | - | - | - |\n@| partialInfo | boolean | 否 | - | - | - |\n@| success | (res: [UniWifiResult](#uniwifiresult-values)) => void | 否 | - | - | - |\n@| fail | (res: UniError) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### UniWifiResult 的属性值 @uniwifiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n| wifi | **UniWifiInfo** \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 是 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| secure | boolean | 否 | - | - | - |\n@| signalStrength | number | 否 | - | - | - |\n@| frequency | number | 否 | - | - | - |\n","returnValue":"","compatibility":"### connectWifi 兼容性 \n| Web | Android 系统版本 | Android | iOS |\n| :- | :- | :- | :- |\n| - | >=4.4 && <10.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#connectWifi)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.connectWifi)\n"},"getWifiList":{"name":"## uni.getWifiList(option) @getwifilist","description":"请求获取 Wi-Fi 列表。wifiList 数据会在 onGetWifiList 注册的回调中返回。
> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | [WifiOption](#wifioption-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [UniWifiResult](#uniwifiresult-values)) => void | 否 | - | - | - |\n@| fail | (res: UniError) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### UniWifiResult 的属性值 @uniwifiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n| wifi | **UniWifiInfo** \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 是 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| secure | boolean | 否 | - | - | - |\n@| signalStrength | number | 否 | - | - | - |\n@| frequency | number | 否 | - | - | - |\n","returnValue":"","compatibility":"### getWifiList 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#getWifiList)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.getWifiList)\n"},"onGetWifiList":{"name":"## uni.onGetWifiList(callback) @ongetwifilist","description":"监听获取到 Wi-Fi 列表数据事件。

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (wifiInfo: any) => void | 是 | - | - | | \n","returnValue":"","compatibility":"### onGetWifiList 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#onGetWifiList)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.onGetWifiList)\n"},"offGetWifiList":{"name":"## uni.offGetWifiList(callback) @offgetwifilist","description":"移除获取到 Wi-Fi 列表数据事件的监听函数。

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | () => void | 是 | - | - | | \n","returnValue":"","compatibility":"### offGetWifiList 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#offGetWifiList)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.offGetWifiList)\n"},"getConnectedWifi":{"name":"## uni.getConnectedWifi(option) @getconnectedwifi","description":"获取已连接的 Wi-Fi 信息

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | [GetConnectedWifiOptions](#getconnectedwifioptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| partialInfo | boolean | 否 | - | - | - |\n@| success | (res: [UniWifiResult](#uniwifiresult-values)) => void | 否 | - | - | - |\n@| fail | (res: UniError) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### UniWifiResult 的属性值 @uniwifiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n| wifi | **UniWifiInfo** \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 是 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| secure | boolean | 否 | - | - | - |\n@| signalStrength | number | 否 | - | - | - |\n@| frequency | number | 否 | - | - | - |\n","returnValue":"","compatibility":"### getConnectedWifi 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#getConnectedWifi)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.getConnectedWifi)\n"},"onWifiConnected":{"name":"## uni.onWifiConnected(callback) @onwificonnected","description":"监听连接上 Wi-Fi 的事件

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (wifiInfo: [UniWifiResult](#uniwifiresult-values)) => void | 是 | - | - | | \n\n#### UniWifiResult 的属性值 @uniwifiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n| wifi | **UniWifiInfo** \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 是 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| secure | boolean | 否 | - | - | - |\n@| signalStrength | number | 否 | - | - | - |\n@| frequency | number | 否 | - | - | - |\n","returnValue":"","compatibility":"### onWifiConnected 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#onWifiConnected)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.onWifiConnected)\n"},"onWifiConnectedWithPartialInfo":{"name":"## uni.onWifiConnectedWithPartialInfo(callback) @onwificonnectedwithpartialinfo","description":"监听连接上 Wi-Fi 的事件。

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (wifiInfo: [UniWifiInfoWithPartialInfo](#uniwifiinfowithpartialinfo-values)) => void | 是 | - | - | | \n\n#### UniWifiInfoWithPartialInfo 的属性值 @uniwifiinfowithpartialinfo-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| SSID | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### onWifiConnectedWithPartialInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#onWifiConnectedWithPartialInfo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.onWifiConnectedWithPartialInfo)\n"},"offWifiConnected":{"name":"## uni.offWifiConnected(callback?) @offwificonnected","description":"移除连接上 Wi-Fi 的事件的监听函数。

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | () => void \\| null | 否 | - | - | | \n","returnValue":"","compatibility":"### offWifiConnected 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#offWifiConnected)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.offWifiConnected)\n"},"onMemoryWarning":{"name":"## uni.onMemoryWarning(callback) @onmemorywarning","description":"开启监听内存警告

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-memorywarning](https://ext.dcloud.net.cn/plugin?name=uni-memorywarning)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (res: [MemoryWarningCallbackResult](#memorywarningcallbackresult-values)) => void | 是 | - | - | | \n\n#### MemoryWarningCallbackResult 的属性值 @memorywarningcallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| level | number | 是 | - | - | 内存警告等级(仅安卓平台有效,iOS始终是0) |\n","returnValue":"","compatibility":"### onMemoryWarning 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/memory.html#onmemorywarning)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.memory.onMemoryWarning)\n"},"offMemoryWarning":{"name":"## uni.offMemoryWarning(callback?) @offmemorywarning","description":"取消监听内存不足告警事件

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-memorywarning](https://ext.dcloud.net.cn/plugin?name=uni-memorywarning)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (res: [MemoryWarningCallbackResult](#memorywarningcallbackresult-values)) => void \\| null | 否 | - | - | | \n\n#### MemoryWarningCallbackResult 的属性值 @memorywarningcallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| level | number | 是 | - | - | 内存警告等级(仅安卓平台有效,iOS始终是0) |\n","returnValue":"","compatibility":"### offMemoryWarning 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/memory.html#offmemorywarning)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.memory.offMemoryWarning)\n"},"onUserCaptureScreen":{"name":"## uni.onUserCaptureScreen(callback?) @onusercapturescreen","description":"开启截屏监听

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-usercapturescreen](https://ext.dcloud.net.cn/plugin?name=uni-usercapturescreen)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (res: [OnUserCaptureScreenCallbackResult](#onusercapturescreencallbackresult-values)) => void \\| null | 否 | - | - | | \n\n#### OnUserCaptureScreenCallbackResult 的属性值 @onusercapturescreencallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| path | string | 否 | - | - | 截屏文件路径(仅Android返回) |\n","returnValue":"","compatibility":"### onUserCaptureScreen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/capture-screen.html#onusercapturescreen)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.captureScreen.onUserCaptureScreen)\n"},"offUserCaptureScreen":{"name":"## uni.offUserCaptureScreen(callback?) @offusercapturescreen","description":"关闭截屏监听

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-usercapturescreen](https://ext.dcloud.net.cn/plugin?name=uni-usercapturescreen)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (res: [OnUserCaptureScreenCallbackResult](#onusercapturescreencallbackresult-values)) => void \\| null | 否 | - | - | | \n\n#### OnUserCaptureScreenCallbackResult 的属性值 @onusercapturescreencallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| path | string | 否 | - | - | 截屏文件路径(仅Android返回) |\n","returnValue":"","compatibility":"### offUserCaptureScreen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/capture-screen.html#offusercapturescreen)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.captureScreen.offUserCaptureScreen)\n"},"createRequestPermissionListener":{"name":"## uni.createRequestPermissionListener() @createrequestpermissionlistener","description":"创建一个监听权限申请的对象。","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [RequestPermissionListener](#requestpermissionlistener-values) |\n\n#### RequestPermissionListener 的方法 @requestpermissionlistener-values \n\n#### onRequest(callback) @onrequest\n监听申请系统权限\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (permissions: Array\\) => void | 是 | - | - | 申请系统权限回调,permissions为触发权限申请的所有权限 | \n\n\n##### onRequest 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onConfirm(callback) @onconfirm\n监听弹出系统权限授权框\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (permissions: Array\\) => void | 是 | - | - | 弹出系统权限授权框回调,permissions为触发弹出权限授权框的所有权限 | \n\n\n##### onConfirm 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onComplete(callback) @oncomplete\n监听权限申请完成\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (permissions: Array\\) => void | 是 | - | - | 权限申请完成回调,permissions为申请完成的所有权限 | \n\n\n##### onComplete 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### stop() @stop\n取消所有监听\n\n\n##### stop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### createRequestPermissionListener 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 4.0 | - |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.createRequestPermissionListener)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/create-request-permission-listener/create-request-permission-listener.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"chooseImage":{"name":"## uni.chooseImage(options) @chooseimage","description":"从本地相册选择图片或使用相机拍照","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ChooseImageOptions](#chooseimageoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| count | number \\| null | 否 | 9 | - | 最多可以选择的图片张数,app端不限制,微信小程序最多可支持20个。 |\n@| sourceType | Array\\ \\| null | 否 | ['album','camera'\\] | - | album 从相册选图,camera 使用相机,默认二者都有 |\n@| success | (callback: [ChooseImageSuccess](#chooseimagesuccess-values)) => void \\| null | 否 | - | - | 成功则返回图片的本地文件路径列表 tempFilePaths |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ChooseImageSuccess 的属性值 @chooseimagesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errSubject | string | 是 | - | - | 调用API的名称 |\n| errMsg | string | 是 | - | - | 描述信息 |\n| tempFilePaths | Array\\ | 是 | - | - | 图片的本地文件路径列表 |\n| tempFiles | any | 是 | - | - | 图片的本地文件列表 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### chooseImage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/image?id=chooseimage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.choose-image)\n"},"choose-image":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/choose-image/choose-image.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/choose-image/choose-image\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n var sourceTypeArray = [\n ['camera'],\n ['album'],\n ['camera', 'album']\n ]\n var sizeTypeArray = [\n ['compressed'],\n ['original'],\n ['compressed', 'original']\n ]\n export default {\n data() {\n return {\n title: 'chooseImage',\n imageList: [] as Array,\n sourceTypeIndex: 2,\n sourceType: ['拍照', '相册', '拍照或相册'],\n sizeTypeIndex: 2,\n sizeType: ['压缩', '原图', '压缩或原图'],\n countIndex: 8,\n count: [1, 2, 3, 4, 5, 6, 7, 8, 9],\n isCrop: false,\n cropPercent: 80,\n cropWidth: 100,\n cropHeight: 100,\n cropResize: false\n }\n },\n onUnload() {\n this.imageList = [];\n this.sourceTypeIndex = 2\n this.sourceType = ['拍照', '相册', '拍照或相册']\n this.sizeTypeIndex = 2\n this.sizeType = ['压缩', '原图', '压缩或原图']\n this.countIndex = 8\n },\n methods: {\n cropHeightConfim(e : InputConfirmEvent) {\n let value = parseInt(e.detail.value)\n if (value > 0) {\n this.cropHeight = value\n } else {\n uni.showToast({\n position: \"bottom\",\n title: \"裁剪高度需要大于0\"\n })\n }\n },\n cropWidthConfim(e : InputConfirmEvent) {\n let value = parseInt(e.detail.value)\n if (value > 0) {\n this.cropWidth = value\n } else {\n uni.showToast({\n position: \"bottom\",\n title: \"裁剪宽度需要大于0\"\n })\n }\n },\n cropPercentConfim(e : InputConfirmEvent) {\n let value = parseInt(e.detail.value)\n if (value > 0 && value <= 100) {\n this.cropPercent = value\n } else {\n uni.showToast({\n position: \"bottom\",\n title: \"请输入0~100之间的值\"\n })\n }\n },\n cropResizeChange(e : UniSwitchChangeEvent) {\n this.cropResize = e.detail.value\n },\n switchCrop(e : UniSwitchChangeEvent) {\n this.isCrop = e.detail.value\n },\n removeImage(index : number) {\n this.imageList.splice(index, 1)\n },\n chooseImageSource() {\n uni.showActionSheet({\n itemList: ['拍照', '相册', '拍照或相册'],\n success: (e) => {\n this.sourceTypeIndex = e.tapIndex!\n }\n })\n },\n chooseImageType() {\n uni.showActionSheet({\n itemList: ['压缩', '原图', '压缩或原图'],\n success: (e) => {\n this.sizeTypeIndex = e.tapIndex!\n }\n })\n },\n chooseImageCount(event : InputConfirmEvent) {\n let count = parseInt(event.detail.value) - 1\n if (count < 0) {\n uni.showToast({\n position: \"bottom\",\n title: \"图片数量应该大于0\"\n })\n return\n }\n this.countIndex = count\n },\n chooseImage: function () {\n // var cropOption:ChooseImageCropOptions|null = this.isCrop ? null : new ChooseImageCropOptions( )\n if (this.imageList.length >= 9) {\n uni.showToast({\n position: \"bottom\",\n title: \"已经有9张图片了,请删除部分图片之后重新选择\"\n })\n return\n }\n uni.chooseImage({\n sourceType: sourceTypeArray[this.sourceTypeIndex],\n sizeType: sizeTypeArray[this.sizeTypeIndex],\n crop: this.isCrop ? { \"quality\": this.cropPercent, \"width\": this.cropWidth, \"height\": this.cropHeight, \"resize\": this.cropResize } as ChooseImageCropOptions : null,\n count: this.imageList.length + this.count[this.countIndex] > 9 ? 9 - this.imageList.length : this.count[this.countIndex],\n success: (res) => {\n this.imageList = this.imageList.concat(res.tempFilePaths);\n },\n fail: (err) => {\n console.log(\"err: \", JSON.stringify(err));\n }\n })\n },\n previewImage: function (index : number) {\n uni.previewImage({\n current: index,\n urls: this.imageList\n })\n }\n }\n }\n\n```\n:::"},"previewImage":{"name":"## uni.previewImage(options) @previewimage","description":"预览图片","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [PreviewImageOptions](#previewimageoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| current | any \\| null | 否 | - | - | current 为当前显示图片的链接/索引值,不填或填写的值无效则为 urls 的第一张。APP平台仅支持索引值。 |\n@| urls | Array\\<[string.ImageURIString](/uts/data-type.md#ide-string)\\> | 是 | - | - | 需要预览的图片链接列表 |\n@| indicator | string \\| null | 否 | - | - | 图片指示器样式
- default: 底部圆点指示器
- number: 顶部数字指示器
- none: 不显示指示器 |\n@| loop | boolean \\| null | 否 | - | - | 是否可循环预览 |\n@| success | (callback: [PreviewImageSuccess](#previewimagesuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### PreviewImageSuccess 的属性值 @previewimagesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errSubject | string | 是 | - | - | 调用API的名称 |\n| errMsg | string | 是 | - | - | 描述信息 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### previewImage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/image?id=previewimage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.preview-image.previewImage)\n"},"closePreviewImage":{"name":"## uni.closePreviewImage(options) @closepreviewimage","description":"关闭图片预览","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ClosePreviewImageOptions](#closepreviewimageoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (callback: [ClosePreviewImageSuccess](#closepreviewimagesuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ClosePreviewImageSuccess 的属性值 @closepreviewimagesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | 错误信息 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### closePreviewImage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/image?id=closepreviewimage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.preview-image.closePreviewImage)\n"},"preview-image":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/preview-image/preview-image.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/preview-image/preview-image\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n type ItemType = {\n value : string,\n name : string\n }\n\n export default {\n data() {\n return {\n imageList: [\"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni@2x.png\", \"/static/uni.png\"],\n indicator: [{\n value: \"default\",\n name: \"圆点\"\n }, {\n value: \"number\",\n name: \"数字\"\n }, {\n value: \"none\",\n name: \"不显示\"\n }] as ItemType[],\n currentIndicator: \"default\",\n isLoop: true\n }\n },\n methods: {\n previewImage(index : number) {\n uni.previewImage({\n urls: this.imageList,\n current: index,\n indicator: this.currentIndicator,\n loop: this.isLoop\n })\n },\n chooseImage() {\n uni.chooseImage({\n sourceType: ['album'],\n success: (e) => {\n this.imageList = this.imageList.concat(e.tempFilePaths)\n },\n fail(_) {\n }\n })\n },\n onIndicatorChanged(e : UniRadioGroupChangeEvent) {\n this.currentIndicator = e.detail.value\n },\n onCheckboxChange(_ : UniCheckboxGroupChangeEvent) {\n this.isLoop = !this.isLoop\n }\n }\n }\n\n```\n:::"},"saveImageToPhotosAlbum":{"name":"## uni.saveImageToPhotosAlbum(options) @saveimagetophotosalbum","description":"保存图片到系统相册","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SaveImageToPhotosAlbumOptions](#saveimagetophotosalbumoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.ImageURIString](/uts/data-type.md#ide-string) | 是 | - | - | 图片文件路径,可以是临时文件路径也可以是永久文件路径,不支持网络图片路径 |\n@| success | (callback: [SaveImageToPhotosAlbumSuccess](#saveimagetophotosalbumsuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SaveImageToPhotosAlbumSuccess 的属性值 @saveimagetophotosalbumsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| path | string | 是 | - | - | 保存到相册的图片路径 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### saveImageToPhotosAlbum 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/image?id=saveimagetophotosalbum)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.save-image-to-photos-album)\n"},"save-image-to-photos-album":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/save-image-to-photos-album/save-image-to-photos-album.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"getImageInfo":{"name":"## uni.getImageInfo(options) @getimageinfo","description":"获取图片信息","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetImageInfoOptions](#getimageinfooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| src | [string.ImageURIString](/uts/data-type.md#ide-string) | 是 | - | - | 图片的路径,可以是相对路径,临时文件路径,存储文件路径,网络图片路径 |\n@| success | (callback: [GetImageInfoSuccess](#getimageinfosuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetImageInfoSuccess 的属性值 @getimageinfosuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| width | number | 是 | - | - | 图片宽度,单位px |\n| height | number | 是 | - | - | 图片高度,单位px |\n| path | string | 是 | - | - | 返回图片的本地路径 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### getImageInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 4.18 | - |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/image?id=getimageinfo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.get-image-info)\n"},"get-image-info":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-image-info/get-image-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-image-info/get-image-info\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: \"getImageInfo\",\n relativeImagePath: \"/static/test-image/logo.png\",\n relativeImageInfo: \"\",\n absoluteImagePath: \"\",\n absoluteImageInfo: \"\",\n remoteImagePath: \"https://qiniu-web-assets.dcloud.net.cn/uni-app-x/static/img/building.jpg\",\n remoteImageInfo: \"\",\n // 自动化测试\n imageInfoForTest: null as UTSJSONObject | null,\n }\n },\n methods: {\n chooseImage() {\n uni.chooseImage({\n count: 1,\n success: (res) => {\n this.absoluteImagePath = res.tempFilePaths[0];\n uni.getImageInfo({\n src: res.tempFilePaths[0],\n success: (_res) => {\n console.log(\"getImageInfo success\", JSON.stringify(res));\n this.relativeImageInfo = `图片宽度: ${_res.width}\\n图片高度: ${_res.height}\\n图片路径: ${_res.path}\\n图片方向: ${_res.orientation}\\n图片格式: ${_res.type}`;\n },\n fail: (err) => {\n uni.showModal({\n title: \"获取图片信息失败\",\n content: JSON.stringify(err),\n showCancel: false\n });\n }\n });\n }\n });\n }\n },\n onReady() {\n uni.getImageInfo({\n src: this.relativeImagePath,\n success: (res) => {\n console.log(\"getImageInfo success\", JSON.stringify(res));\n this.absoluteImageInfo = `图片宽度: ${res.width}\\n图片高度: ${res.height}\\n图片路径: ${res.path}\\n图片方向: ${res.orientation}\\n图片格式: ${res.type}`;\n this.imageInfoForTest = {\n \"width\": res.width,\n \"height\": res.height,\n \"path\": res.path.slice(res.path.indexOf('/static')),\n \"orientation\": res.orientation,\n \"type\": res.type\n };\n },\n fail: (err) => {\n uni.showModal({\n title: \"获取图片信息失败\",\n content: JSON.stringify(err),\n showCancel: false\n });\n this.imageInfoForTest = null;\n }\n });\n uni.getImageInfo({\n src: this.remoteImagePath,\n success: (res) => {\n console.log(\"getImageInfo success\", JSON.stringify(res));\n this.remoteImageInfo = `图片宽度: ${res.width}\\n图片高度: ${res.height}\\n图片路径: ${res.path}\\n图片方向: ${res.orientation}\\n图片格式: ${res.type}`;\n },\n fail: (err) => {\n uni.showModal({\n title: \"获取图片信息失败\",\n content: JSON.stringify(err),\n showCancel: false\n });\n }\n });\n }\n }\n\n```\n:::"},"compressImage":{"name":"## uni.compressImage(options) @compressimage","description":"压缩图片","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [CompressImageOptions](#compressimageoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| src | [string.ImageURIString](/uts/data-type.md#ide-string) | 是 | - | - | 图片路径,图片的路径,可以是相对路径、临时文件路径、存储文件路径 |\n@| quality | number \\| null | 否 | - | - | 压缩质量,范围0~100,数值越小,质量越低,压缩率越高(仅对jpg有效) |\n@| rotate | number \\| null | 否 | - | - | 旋转度数,范围0~360 |\n@| ~~width~~ | string \\| null | 否 | - | - | 缩放图片的宽度 **已废弃** |\n@| ~~height~~ | string \\| null | 否 | - | - | 缩放图片的高度 **已废弃** |\n@| compressedHeight | number \\| null | 否 | - | - | 压缩后图片的高度,单位为px,若不填写则默认以compressedWidth为准等比缩放 |\n@| compressedWidth | number \\| null | 否 | - | - | 压缩后图片的宽度,单位为px,若不填写则默认以compressedHeight为准等比缩放。 |\n@| success | (callback: [CompressImageSuccess](#compressimagesuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### CompressImageSuccess 的属性值 @compressimagesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tempFilePath | string | 是 | - | - | 压缩后图片的临时文件路径 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### compressImage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 4.18 | - |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/image?id=compressimage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.compress-image)\n"},"compress-image":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/compress-image/compress-image.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"chooseVideo":{"name":"## uni.chooseVideo(options) @choosevideo","description":"拍摄视频或从手机相册中选视频,返回视频的临时文件路径。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ChooseVideoOptions](#choosevideooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| sourceType | Array\\ \\| null | 否 | - | - | album 从相册选视频,camera 使用相机拍摄,默认为:['album', 'camera'\\] |\n@| success | (callback: [ChooseVideoSuccess](#choosevideosuccess-values)) => void \\| null | 否 | - | - | 接口调用成功,返回视频文件的临时文件路径,详见返回参数说明 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ChooseVideoSuccess 的属性值 @choosevideosuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tempFilePath | string | 是 | - | - | 选定视频的临时文件路径 |\n| duration | number | 是 | - | - | 选定视频的时间长度 |\n| size | number | 是 | - | - | 选定视频的数据量大小 |\n| height | number | 是 | - | - | 返回选定视频的长 |\n| width | number | 是 | - | - | 返回选定视频的宽 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### chooseVideo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/video?id=choosevideo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.choose-video)\n"},"choose-video":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/choose-video/choose-video.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/choose-video/choose-video\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n import { ItemType } from '@/components/enum-data/enum-data';\n export default {\n data() {\n return {\n title: \"chooseVideo\",\n src: \"\",\n sourceTypeItemTypes: [{ \"value\": 0, \"name\": \"从相册中选择视频\" }, { \"value\": 1, \"name\": \"拍摄视频\" }, { \"value\": 2, \"name\": \"从相册中选择视频或拍摄视频\" }] as ItemType[],\n sourceTypeItems: [[\"album\"], [\"camera\"], [\"album\", \"camera\"]],\n cameraItemTypes: [{ \"value\": 0, \"name\": \"后置摄像头\" }, { \"value\": 1, \"name\": \"前置摄像头\" }] as ItemType[],\n cameraItems: [\"back\", \"front\"],\n sourceType: [\"album\", \"camera\"],\n compressed: true,\n maxDuration: 60,\n camera: \"back\",\n videoInfo: \"\"\n }\n },\n methods: {\n chooseVideo() {\n uni.chooseVideo({\n sourceType: this.sourceType,\n // #ifdef APP\n compressed: this.compressed,\n // #endif\n maxDuration: this.maxDuration,\n camera: this.camera,\n success: (res) => {\n console.log(\"chooseVideo success\", JSON.stringify(res));\n this.src = res.tempFilePath;\n this.videoInfo = `视频长度: ${res.duration}s\\n视频大小: ${Math.ceil(res.size / 1024)}KB\\n视频宽度: ${res.width}\\n视频高度: ${res.height}\\n`;\n },\n fail: (err) => {\n uni.showModal({\n title: \"选择视频失败\",\n content: JSON.stringify(err),\n showCancel: false\n });\n }\n });\n },\n onSourceTypeChange(value : number) {\n this.sourceType = this.sourceTypeItems[value];\n },\n onCompressedChange(value : boolean) {\n this.compressed = value;\n },\n onMaxDurationConfirm(value : number) {\n this.maxDuration = value;\n },\n onCameraChange(value : number) {\n this.camera = this.cameraItems[value];\n }\n }\n }\n\n```\n:::"},"saveVideoToPhotosAlbum":{"name":"## uni.saveVideoToPhotosAlbum(options) @savevideotophotosalbum","description":"保存视频到系统相册","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SaveVideoToPhotosAlbumOptions](#savevideotophotosalbumoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.VideoURIString](/uts/data-type.md#ide-string) | 是 | - | - | 视频文件路径,可以是临时文件路径也可以是永久文件路径 |\n@| success | (callback: SaveVideoToPhotosAlbumSuccess) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### saveVideoToPhotosAlbum 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/video?id=savevideotophotosalbum)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.save-video-to-photos-album)\n"},"save-video-to-photos-album":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/save-video-to-photos-album/save-video-to-photos-album.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"getVideoInfo":{"name":"## uni.getVideoInfo(options) @getvideoinfo","description":"获取视频详细信息","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetVideoInfoOptions](#getvideoinfooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| src | [string.VideoURIString](/uts/data-type.md#ide-string) | 是 | - | - | 视频文件路径,可以是临时文件路径也可以是永久文件路径 |\n@| success | (callback: [GetVideoInfoSuccess](#getvideoinfosuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetVideoInfoSuccess 的属性值 @getvideoinfosuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| duration | number | 是 | - | - | 视频长度 |\n| size | number | 是 | - | - | 视频大小,单位 kB |\n| height | number | 是 | - | - | 视频的长,单位 px |\n| width | number | 是 | - | - | 视频的宽,单位 px |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### getVideoInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 4.18 | - |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/video?id=getvideoinfo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.get-video-info)\n"},"get-video-info":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-video-info/get-video-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-video-info/get-video-info\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: \"getVideoInfo\",\n absoluteVideoPath: \"\",\n absoluteVideoInfo: \"\",\n // 自动化测试\n videoInfoForTest: null as UTSJSONObject | null\n }\n },\n methods: {\n chooseVideo() {\n uni.chooseVideo({\n compressed: false,\n success: (res) => {\n this.absoluteVideoPath = res.tempFilePath;\n uni.getVideoInfo({\n src: res.tempFilePath,\n success: (_res) => {\n console.log(\"getVideoInfo success\", JSON.stringify(res));\n this.absoluteVideoInfo = `视频画面方向: ${_res.orientation}\\n视频格式: ${_res.type}\\n视频长度: ${_res.duration}s\\n视频大小: ${_res.size}KB\\n视频宽度: ${_res.width}\\n视频高度: ${_res.height}\\n视频帧率: ${_res.fps}fps\\n视频码率: ${_res.bitrate}kbps`;\n },\n fail: (err) => {\n uni.showModal({\n title: \"获取视频信息失败\",\n content: JSON.stringify(err),\n showCancel: false\n });\n }\n });\n }\n });\n },\n testGetVideoInfo() {\n uni.getVideoInfo({\n src: '/static/test-video/10second-demo.mp4',\n success: (res) => {\n this.videoInfoForTest = {\n \"orientation\": res.orientation,\n \"type\": res.type,\n \"duration\": res.duration.toInt(),\n \"size\": res.size,\n \"width\": res.width,\n \"height\": res.height,\n \"fps\": res.fps,\n \"bitrate\": res.bitrate\n };\n },\n fail: (_) => {\n this.videoInfoForTest = null;\n }\n });\n }\n }\n }\n\n```\n:::"},"compressVideo":{"name":"## uni.compressVideo(options) @compressvideo","description":"压缩视频","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [CompressVideoOptions](#compressvideooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| src | [string.VideoURIString](/uts/data-type.md#ide-string) | 是 | - | - | 视频文件路径,可以是临时文件路径也可以是永久文件路径 |\n@| quality | string \\| null | 否 | - | - | 压缩质量
- low: 低
- medium: 中
- high: 高 |\n@| resolution | number \\| null | 否 | - | - | 相对于原视频的分辨率比例,取值范围(0, 1\\] |\n@| success | (callback: [CompressVideoSuccess](#compressvideosuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### CompressVideoSuccess 的属性值 @compressvideosuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tempFilePath | string | 是 | - | - | 压缩后的临时文件地址 |\n| size | number | 是 | - | - | 压缩后的大小,单位 kB |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### compressVideo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 4.18 | - |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/video?id=compressvideo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.compress-video)\n"},"compress-video":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/compress-video/compress-video.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"getLocation":{"name":"## uni.getLocation(options) @getlocation","description":"获取当前的地理位置、速度","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetLocationOptions](#getlocationoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| type | \"wgs84\" \\| \"gcj02\" | 否 | wgs84 | - | 默认为 wgs84 返回 gps 坐标,gcj02 返回可用于uni.openLocation的坐标,web端需配置定位 SDK 信息才可支持 gcj02 |\n@| altitude | boolean \\| null | 否 | false | - | 传入 true 会返回高度信息,由于获取高度需要较高精确度,会减慢接口返回速度 |\n@| geocode | boolean \\| null | 否 | false | - | 传入 true 会解析地址 |\n@| highAccuracyExpireTime | number \\| null | 否 | 3000 | - | 高精度定位超时时间(ms),指定时间内返回最高精度,该值3000ms以上高精度定位才有效果 |\n@| isHighAccuracy | boolean \\| null | 否 | false | - | 开启高精度定位 |\n@| success | (result: [GetLocationSuccess](#getlocationsuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [IGetLocationFail](#igetlocationfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetLocationSuccess 的属性值 @getlocationsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| latitude | number | 是 | 0 | - | 纬度,浮点数,范围为-90~90,负数表示南纬 |\n| longitude | number | 是 | 0 | - | 经度,范围为-180~180,负数表示西经 |\n| speed | number | 是 | 0 | - | 速度,浮点数,单位m/s |\n| accuracy | number | 是 | - | - | 位置的精确度 |\n| altitude | number | 是 | 0 | - | 高度,单位 m |\n| verticalAccuracy | number | 是 | 0 | - | 垂直精度,单位 m(Android 无法获取,返回 0) |\n| horizontalAccuracy | number | 是 | 0 | - | 水平精度,单位 m |\n| address | any \\| null | 否 | null | - | 地址信息 |\n\n##### IGetLocationFail 的属性值 @igetlocationfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1505004 \\| 1505005 \\| 1505021 \\| 1505022 \\| 1505023 \\| 1505024 \\| 1505025 \\| 1505026 | 是 | - | - | 错误码
- 1505004 缺失权限
- 1505005 缺失高精度权限授权(iOS特有)
- 1505021 超时
- 1505022 不支持的定位类型
- 1505023 不支持逆地理编码
- 1505024 没有找到具体的定位引擎,请定位开关是否已打开
- 1505025 逆地理编码捕获失败
- 1505026 捕获定位失败 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### getLocation 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/location/location?id=getlocation)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.location.get-location)\n"},"get-location":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-location/get-location.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-location/get-location\n>Template\n```vue\n\n\n\n```\n>Script\n```uts\n\n type ItemType = {\n value : 'wgs84' | 'gcj02',\n name : string,\n }\n export default {\n data() {\n return {\n title: 'get-location',\n altitudeSelect: false,\n isHighAccuracySelect: false,\n geocodeSelect: false,\n exeRet: '',\n items: [\n {\n value: 'wgs84',\n name: 'wgs84'\n },\n {\n value: 'gcj02',\n name: 'gcj02'\n }\n ] as ItemType[],\n current: 0,\n }\n },\n methods: {\n altitudeChange: function (e : UniSwitchChangeEvent) {\n this.altitudeSelect = e.detail.value\n },\n geocodeChange: function (e : UniSwitchChangeEvent) {\n this.geocodeSelect = e.detail.value\n },\n highAccuracySelectChange: function (e : UniSwitchChangeEvent) {\n this.isHighAccuracySelect = e.detail.value\n },\n radioChange(e : UniRadioGroupChangeEvent) {\n for (let i = 0; i < this.items.length; i++) {\n if (this.items[i].value === e.detail.value) {\n this.current = i;\n break;\n }\n }\n },\n getLocationTap: function () {\n uni.showLoading({\n title: '定位中'\n })\n uni.getLocation(({\n type: this.items[this.current].value,\n altitude: this.altitudeSelect,\n isHighAccuracy: this.isHighAccuracySelect,\n geocode: this.geocodeSelect,\n success: (res : any) => {\n uni.hideLoading()\n console.log(res);\n this.exeRet = JSON.stringify(res)\n },\n fail: (res : any) => {\n uni.hideLoading()\n console.log(res);\n this.exeRet = JSON.stringify(res)\n },\n complete: (res : any) => {\n uni.hideLoading()\n console.log(res);\n this.exeRet = JSON.stringify(res)\n }\n }));\n\n\n }\n\n }\n }\n\n```\n:::"},"getStorageInfo":{"name":"## uni.getStorageInfo(options) @getstorageinfo","description":"uni.getStorageInfo函数定义
异步获取当前 storage 的相关信息。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetStorageInfoOptions](#getstorageinfooptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [GetStorageInfoSuccess](#getstorageinfosuccess-values)) => void \\| null | 否 | - | - | uni.getStorageInfo成功回调函数定义 |\n@| fail | (res: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | uni.getStorageInfo失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.getStorageInfo完成回调函数定义 | \n\n##### GetStorageInfoSuccess 的属性值 @getstorageinfosuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| keys | Array\\ | 是 | - | - | 当前 storage 中所有的 key |\n| currentSize | number | 是 | - | - | 当前占用的空间大小, 单位:kb |\n| limitSize | number | 是 | - | - | 限制的空间大小, 单位:kb |\n","returnValue":"","compatibility":"### getStorageInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#getstorageinfo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.getStorageInfo)\n"},"getStorageInfoSync":{"name":"## uni.getStorageInfoSync() @getstorageinfosync","description":"uni.getStorageInfoSync函数定义
同步获取当前 storage 的相关信息。

","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetStorageInfoSuccess** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| keys | Array\\ | 是 | - | - | 当前 storage 中所有的 key |\n@| currentSize | number | 是 | - | - | 当前占用的空间大小, 单位:kb |\n@| limitSize | number | 是 | - | - | 限制的空间大小, 单位:kb | \n","compatibility":"### getStorageInfoSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#getstorageinfosync)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.getStorageInfoSync)\n"},"getStorage":{"name":"## uni.getStorage(options) @getstorage","description":"uni.getStorage函数定义
从本地存储中异步获取指定 key 对应的内容。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetStorageOptions](#getstorageoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| key | string | 是 | - | - | 本地存储中的指定的 key |\n@| success | (res: [GetStorageSuccess](#getstoragesuccess-values)) => void \\| null | 否 | - | - | uni.getStorage成功回调函数定义 |\n@| fail | (res: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | uni.getStorage失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.getStorage完成回调函数定义 | \n\n##### GetStorageSuccess 的属性值 @getstoragesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | any \\| null | 否 | - | - | key 对应的内容 |\n","returnValue":"","compatibility":"### getStorage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#getstorage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.getStorage)\n"},"getStorageSync":{"name":"## uni.getStorageSync(key) @getstoragesync","description":"uni.getStorageSync函数定义
从本地存储中同步获取指定 key 对应的内容。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 本地存储中的指定的 key | \n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| any \\| null | 否 |\n \n","compatibility":"### getStorageSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#getstoragesync)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.getStorageSync)\n"},"setStorage":{"name":"## uni.setStorage(options) @setstorage","description":"uni.setStorage函数定义
将数据存储在本地storage存储中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个异步接口。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **SetStorageOptions** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| key | string | 是 | - | - | 本地存储中的指定的 key |\n@| data | any | 是 | - | - | 需要存储的内容,只支持能通过 JSON.stringify 序列化的对象 |\n@| success | (res: SetStorageSuccess) => void \\| null | 否 | - | - | uni.setStorage成功回调函数定义 |\n@| fail | (res: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | uni.setStorage失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.setStorage完成回调函数定义 | \n","returnValue":"","compatibility":"### setStorage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#setstorage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.setStorage)\n"},"setStorageSync":{"name":"## uni.setStorageSync(key, data) @setstoragesync","description":"uni.setStorageSync函数定义
将 data 存储在本地storage存储中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个同步接口。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 本地storage存储中的指定的 key |\n| data | any | 是 | - | - | 需要存储的内容,只支持能通过 JSON.stringify 序列化的对象 | \n","returnValue":"","compatibility":"### setStorageSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#setstoragesync)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.setStorageSync)\n"},"removeStorage":{"name":"## uni.removeStorage(options) @removestorage","description":"uni.removeStorage函数定义
从本地存储中异步移除指定 key。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **RemoveStorageOptions** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| key | string | 是 | - | - | 本地存储中的指定的 key |\n@| success | (res: RemoveStorageSuccess) => void \\| null | 否 | - | - | uni.removeStorage成功回调函数定义 |\n@| fail | (res: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | uni.removeStorage失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.removeStorage完成回调函数定义 | \n","returnValue":"","compatibility":"### removeStorage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](hhttps://uniapp.dcloud.net.cn/api/storage/storage.html#removestorage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.removeStorage)\n"},"removeStorageSync":{"name":"## uni.removeStorageSync(key) @removestoragesync","description":"uni.removeStorageSync函数定义
从本地存储中同步移除指定 key。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 本地存储中的指定的 key | \n","returnValue":"","compatibility":"### removeStorageSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#removestoragesync)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.removeStorageSync)\n"},"clearStorage":{"name":"## uni.clearStorage(option?) @clearstorage","description":"uni.clearStorage函数定义
清除本地数据存储。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | **ClearStorageOptions** \\| null | 否 | - | - | uni.removeStorage参数定义 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: ClearStorageSuccess) => void \\| null | 否 | - | - | uni.clearStorage 成功回调函数定义 |\n@| fail | (res: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | uni.clearStorage 失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.clearStorage 完成回调函数定义 | \n","returnValue":"","compatibility":"### clearStorage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#clearstorage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.clearStorage)\n"},"clearStorageSync":{"name":"## uni.clearStorageSync() @clearstoragesync","description":"uni.clearStorageSync函数定义
清除本地数据存储。
","param":"","returnValue":"","compatibility":"### clearStorageSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#clearstoragesync)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.clearStorageSync)\n"},"storage":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/storage/storage.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/storage/storage\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'get/set/clearStorage',\n key: '',\n data: '' as any,\n apiGetData: '' as any | null,\n storageInfo: '',\n }\n },\n methods: {\n getStorageInfo() {\n uni.getStorageInfo({\n success: (res) => {\n this.apiGetData = res\n this.storageInfo = JSON.stringify(res)\n },\n })\n },\n getStorageInfoSync() {\n try {\n const res = uni.getStorageInfoSync()\n this.apiGetData = res\n this.storageInfo = JSON.stringify(res)\n } catch (e) {\n // error\n console.log(e)\n }\n },\n jsonLikeMock() {\n this.key = 'key_' + Math.random()\n this.data = JSON.stringify({\n name: \"james\",\n age: 12,\n from: \"american\"\n });\n\n },\n longLikeMock() {\n this.key = 'key_' + Math.random()\n this.data = \"1234567890\"\n },\n floatLikeMock() {\n this.key = 'key_' + Math.random()\n this.data = \"321456.1234567890\"\n },\n negativeLikeMock() {\n this.key = 'key_' + Math.random()\n this.data = \"-321456\"\n },\n strMock() {\n this.key = 'key_' + Math.random()\n this.data = '测试字符串数据,长度为16个字符'\n },\n complexMock() {\n this.key = 'key_' + Math.random()\n let jsonObj = {\n name: '张三',\n age: 12,\n classMate: [\n {\n id: 1001,\n name: '李四',\n },\n {\n id: 1002,\n name: 'jack ma',\n },\n ],\n }\n this.data = jsonObj\n },\n numberMock() {\n this.key = 'key_' + Math.random()\n this.data = 10011\n },\n floatMock() {\n this.key = 'key_' + Math.random()\n this.data = 3.1415926535893384626\n },\n\n keyChange: function (e : InputEvent) {\n this.key = e.detail.value\n },\n dataChange: function (e : InputEvent) {\n this.data = e.detail.value\n },\n getStorage: function () {\n var key = this.key\n if (key.length == 0) {\n uni.showModal({\n title: '读取数据失败',\n content: 'key 不能为空',\n showCancel: false,\n })\n } else {\n let that = this\n uni.getStorage({\n key: key,\n success: (res) => {\n\n that.apiGetData = res.data\n let desc : string = typeof this.apiGetData\n if (\"object\" == desc) {\n desc = desc + \": \" + JSON.stringify(this.apiGetData)\n } else {\n desc = desc + \": \" + this.apiGetData\n }\n\n uni.showModal({\n title: '读取数据成功',\n content: desc,\n showCancel: false,\n })\n },\n fail: () => {\n uni.showModal({\n title: '读取数据失败',\n content: '找不到 key 对应的数据',\n showCancel: false,\n })\n },\n })\n }\n },\n getStorageSync: function () {\n var key = this.key\n if (key.length == 0) {\n uni.showModal({\n title: '读取数据失败',\n content: 'key 不能为空',\n showCancel: false,\n })\n } else {\n this.apiGetData = uni.getStorageSync(key)\n\n let desc : string = typeof this.apiGetData\n if (\"object\" == desc) {\n desc = desc + \": \" + JSON.stringify(this.apiGetData)\n } else {\n desc = desc + \": \" + this.apiGetData\n }\n\n uni.showModal({\n title: '读取数据成功',\n content: desc,\n showCancel: false,\n })\n }\n },\n setStorage: function () {\n var key = this.key\n var data = this.data\n if (key.length == 0) {\n uni.showModal({\n title: '保存数据失败',\n content: 'key 不能为空',\n showCancel: false,\n })\n } else {\n uni.setStorage({\n key: key,\n data: data,\n success: () => {\n uni.showModal({\n title: '存储数据成功',\n showCancel: false,\n })\n },\n fail: () => {\n uni.showModal({\n title: '储存数据失败!',\n showCancel: false,\n })\n },\n })\n }\n },\n setStorageSync: function () {\n var key = this.key\n var data = this.data\n if (key.length == 0) {\n uni.showModal({\n title: '保存数据失败',\n content: 'key 不能为空',\n showCancel: false,\n })\n } else {\n uni.setStorageSync(key, data)\n uni.showModal({\n title: '存储数据成功',\n showCancel: false,\n })\n }\n },\n removeStorage: function () {\n uni.removeStorage({\n key: this.key,\n success: () => {\n uni.showModal({\n title: '移除数据成功',\n showCancel: false,\n })\n },\n fail: () => {\n uni.showModal({\n title: '移除数据失败',\n showCancel: false,\n })\n },\n })\n },\n removeStorageSync: function () {\n uni.removeStorageSync(this.key)\n uni.showModal({\n title: '移除数据成功',\n showCancel: false,\n })\n },\n clearStorage: function () {\n this.key = ''\n this.data = ''\n uni.clearStorage({\n success: function (_) {\n uni.showModal({\n title: '清除数据成功',\n showCancel: false,\n })\n },\n fail: function (_) {\n uni.showModal({\n title: '清除数据失败',\n showCancel: false,\n })\n },\n })\n },\n clearStorageSync: function () {\n this.key = ''\n this.data = ''\n uni.clearStorageSync()\n uni.showModal({\n title: '清除数据成功',\n content: ' ',\n showCancel: false,\n })\n },\n },\n }\n\n```\n:::"},"getFileSystemManager":{"name":"## uni.getFileSystemManager() @getfilesystemmanager","description":"获取文件管理器","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [FileSystemManager](#filesystemmanager-values) |\n\n#### FileSystemManager 的方法 @filesystemmanager-values \n\n#### readFile(options) @readfile\n读取本地文件内容\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ReadFileOptions](#readfileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| encoding | \"base64\" \\| \"utf-8\" | 是 | - | - | base64 / utf-8 |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 文件路径,支持相对地址和绝对地址,app-android平台支持代码包文件目录 |\n@| success | (res: [ReadFileSuccessResult](#readfilesuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 通用的错误返回结果回调 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 通用的结束返回结果回调 | \n\n##### ReadFileSuccessResult 的属性值 @readfilesuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | string | 是 | - | - | - |\n\n##### IFileSystemManagerFail 的属性值 @ifilesystemmanagerfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1200002 \\| 1300002 \\| 1300013 \\| 1300021 \\| 1300022 \\| 1300066 \\| 1301003 \\| 1301005 \\| 1300201 \\| 1300202 \\| 1301111 \\| 1302003 \\| 1300009 | 是 | - | - | 错误码
- 1200002 类型错误。仅支持 base64 / utf-8
- 1300002 未找到文件
- 1300013 无权限
- 1300021 是目录
- 1300022 参数无效
- 1300066 目录非空
- 1301003 对目录的非法操作
- 1301005 文件已存在
- 1300201 系统错误
- 1300202 超出文件存储限制的最大尺寸
- 1301111 brotli解压失败
- 1302003 标志无效
- 1300009 文件描述符错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n\n##### readFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### readFileSync(filePath, encoding?) @readfilesync\nFileSystemManager.readFile 的同步版本参数\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filePath | string | 是 | - | - | 文件路径,支持相对地址和绝对地址,app-android平台支持代码包文件目录 |\n| encoding | string \\| null | 否 | - | - | base64 / utf-8 | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n\n##### readFileSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### writeFile(options) @writefile\n写文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [WriteFileOptions](#writefileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 文件路径,只支持绝对地址 |\n@| encoding | \"ascii\" \\| \"base64\" \\| \"utf-8\" | 是 | - | - | 指定写入文件的字符编码
支持:ascii base64 utf-8 |\n@| data | string | 是 | - | - | 写入的文本内容 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 通用的正确返回结果回调 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### FileManagerSuccessResult 的属性值 @filemanagersuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n\n\n##### writeFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### writeFileSync(filePath, data, encoding) @writefilesync\nFileSystemManager.writeFile 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filePath | string | 是 | - | - | 文件路径,只支持绝对地址 |\n| data | string | 是 | - | - | 写入的文本内容 |\n| encoding | string | 是 | - | - | 指定写入文件的字符编码,支持:ascii base64 utf-8 | \n\n\n##### writeFileSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### unlink(options) @unlink\n删除文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **UnLinkOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 文件路径,只支持绝对地址 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### unlink 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### unlinkSync(filePath) @unlinksync\nFileSystemManager.unlink 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filePath | string | 是 | - | - | 文件路径,只支持绝对地址 | \n\n\n##### unlinkSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### mkdir(options) @mkdir\n创建目录\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MkDirOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| dirPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 创建的目录路径 (本地路径) |\n@| recursive | boolean | 是 | - | - | 是否在递归创建该目录的上级目录后再创建该目录。如果对应的上级目录已经存在,则不创建该上级目录。如 dirPath 为 a/b/c/d 且 recursive 为 true,将创建 a 目录,再在 a 目录下创建 b 目录,以此类推直至创建 a/b/c 目录下的 d 目录。 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### mkdir 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### mkdirSync(dirPath, recursive) @mkdirsync\nFileSystemManager.mkdir 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| dirPath | string | 是 | - | - | 创建的目录路径 (本地路径) |\n| recursive | boolean | 是 | - | - | 是否在递归创建该目录的上级目录后再创建该目录。如果对应的上级目录已经存在,则不创建该上级目录。如 dirPath 为 a/b/c/d 且 recursive 为 true,将创建 a 目录,再在 a 目录下创建 b 目录,以此类推直至创建 a/b/c 目录下的 d 目录。 | \n\n\n##### mkdirSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### rmdir(options) @rmdir\n删除目录\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **RmDirOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| dirPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要删除的目录路径 (本地路径) |\n@| recursive | boolean | 是 | - | - | 是否递归删除目录。如果为 true,则删除该目录和该目录下的所有子目录以及文件。 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### rmdir 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### rmdirSync(dirPath, recursive) @rmdirsync\nFileSystemManager.rmdir 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| dirPath | string | 是 | - | - | 要删除的目录路径 (本地路径) |\n| recursive | boolean | 是 | - | - | 是否递归删除目录。如果为 true,则删除该目录和该目录下的所有子目录以及文件。 | \n\n\n##### rmdirSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### readdir(options) @readdir\n读取目录内文件列表\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ReadDirOptions](#readdiroptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| dirPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要读取的目录路径 (本地路径) |\n@| success | (res: [ReadDirSuccessResult](#readdirsuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ReadDirSuccessResult 的属性值 @readdirsuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| files | Array\\ | 是 | - | - | - |\n\n\n##### readdir 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### readdirSync(dirPath) @readdirsync\nFileSystemManager.readdir 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| dirPath | string | 是 | - | - | 要读取的目录路径 (本地路径) | \n\n##### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Array\\ \\| null | 否 |\n \n\n##### readdirSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### access(options) @access\n判断文件/目录是否存在\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **AccessOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| path | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要判断是否存在的文件/目录路径 (本地路径) |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### access 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### accessSync(path) @accesssync\nFileSystemManager.access 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| path | string | 是 | - | - | 要判断是否存在的文件/目录路径 (本地路径) | \n\n\n##### accessSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### rename(options) @rename\n重命名文件。可以把文件从 oldPath 移动到 newPath\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **RenameOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| oldPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 源文件路径,支持本地路径 |\n@| newPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 新文件路径,支持本地路径 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### rename 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### renameSync(oldPath, newPath) @renamesync\nFileSystemManager.rename 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| oldPath | string | 是 | - | - | 源文件路径,支持本地路径 |\n| newPath | string | 是 | - | - | 新文件路径,支持本地路径 | \n\n\n##### renameSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### copyFile(options) @copyfile\n复制文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **CopyFileOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| srcPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 源文件路径,支持本地路径 |\n@| destPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 新文件路径,支持本地路径 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### copyFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### copyFileSync(srcPath, destPath) @copyfilesync\nFileSystemManager.copyFile 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| srcPath | string | 是 | - | - | 源文件路径,支持本地路径 |\n| destPath | string | 是 | - | - | 新文件路径,支持本地路径 | \n\n\n##### copyFileSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### getFileInfo(options) @getfileinfo\n获取该本地临时文件 或 本地缓存文件 信息\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetFileInfoOptions](#getfileinfooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要读取的文件路径 (本地路径) |\n@| digestAlgorithm | \"md5\" \\| \"sha1\" | 是 | - | - | md5 / sha1 |\n@| success | (res: [GetFileInfoSuccessResult](#getfileinfosuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetFileInfoSuccessResult 的属性值 @getfileinfosuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| digest | string | 是 | - | - | - |\n| size | number | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n\n\n##### getFileInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### stat(options) @stat\n获取文件 Stats 对象\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [StatOptions](#statoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| path | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 文件/目录路径 (本地路径) |\n@| recursive | boolean | 是 | - | - | 是否递归获取目录下的每个文件的 Stats 信息 |\n@| success | (res: [StatSuccessResult](#statsuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### StatSuccessResult 的属性值 @statsuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n| stats | Array\\<[FileStats](#filestats-values)\\> | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| path | string | 是 | - | - | - |\n@| stats | [Stats](#stats-values) | 是 | - | - | - |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| mode | number | 是 | - | - | 文件的类型和存取的权限,对应 POSIX stat.st_mode
注意android中,文件类型只包含是否是目录与文件,
另外在android中这里的权限指的是当前进程对文件或者文件夹是否有读,写,执行的权限,
这里没有与 POSIX stat.st_mode对应的组,其他人等相关权限的数据返回,只有所有者的相关权限 |\n@@| size | number | 是 | - | - | 文件大小,单位:B,对应 POSIX stat.st_size |\n@@| lastAccessedTime | number | 是 | - | - | 文件最近一次被存取或被执行的时间,UNIX 时间戳,对应 POSIX stat.st_atime
注意:android中由于系统限制无法获取该数据 |\n@@| lastModifiedTime | number | 是 | - | - | 文件最后一次被修改的时间,UNIX 时间戳,对应 POSIX stat.st_mtime |\n\n##### Stats 的方法 @stats-values \n\n##### isDirectory() @isdirectory\n判断当前文件是否一个目录\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| boolean |\n \n\n###### isDirectory 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### isFile() @isfile\n判断当前文件是否一个普通文件\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| boolean |\n \n\n###### isFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n\n##### stat 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### statSync(path, recursive) @statsync\nFileSystemManager.stat 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| path | string | 是 | - | - | 文件/目录路径 (本地路径) |\n| recursive | boolean | 是 | - | - | 是否递归获取目录下的每个文件的 Stats 信息 | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[FileStats](#filestats-values)\\> |\n \n\n##### statSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### appendFile(options) @appendfile\n在文件结尾追加内容\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **AppendFileOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要追加内容的文件路径 (本地路径) |\n@| encoding | \"ascii\" \\| \"base64\" \\| \"utf-8\" | 是 | - | - | 指定写入文件的字符编码
支持:ascii base64 utf-8 |\n@| data | string | 是 | - | - | 要追加的文本 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### appendFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### appendFileSync(filePath, data, encoding) @appendfilesync\nFileSystemManager.appendFile 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filePath | string | 是 | - | - | 要追加内容的文件路径 (本地路径) |\n| data | string | 是 | - | - | 要追加的文本 |\n| encoding | string | 是 | - | - | 指定写入文件的字符编码支持:ascii base64 utf-8 | \n\n\n##### appendFileSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### saveFile(options) @savefile\n保存临时文件到本地。此接口会移动临时文件,因此调用成功后,tempFilePath 将不可用。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SaveFileOptions](#savefileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| tempFilePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 临时存储文件路径 (本地路径) |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) \\| null | 否 | - | - | 要存储的文件路径 (本地路径) |\n@| success | (res: [SaveFileSuccessResult](#savefilesuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SaveFileSuccessResult 的属性值 @savefilesuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| savedFilePath | string | 是 | - | - | 存储后的文件路径 (本地路径) |\n\n\n##### saveFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### saveFileSync(tempFilePath, filePath?) @savefilesync\nFileSystemManager.saveFile 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tempFilePath | string | 是 | - | - | 临时存储文件路径 (本地路径) |\n| filePath | string \\| null | 否 | - | - | 要存储的文件路径 (本地路径) | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n\n##### saveFileSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### removeSavedFile(options) @removesavedfile\n删除该小程序下已保存的本地缓存文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **RemoveSavedFileOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 需要删除的文件路径 (本地路径) |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### removeSavedFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### unzip(options) @unzip\n解压文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **UnzipFileOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| zipFilePath | string | 是 | - | - | 源文件路径,支持本地路径, 只可以是 zip 压缩文件 |\n@| targetPath | string | 是 | - | - | 目标目录路径, 支持本地路径 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### unzip 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### getSavedFileList(options) @getsavedfilelist\n获取该已保存的本地缓存文件列表\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetSavedFileListOptions](#getsavedfilelistoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [GetSavedFileListResult](#getsavedfilelistresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetSavedFileListResult 的属性值 @getsavedfilelistresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| fileList | Array\\ | 是 | - | - | - |\n\n\n##### getSavedFileList 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### truncate(options) @truncate\n对文件内容进行截断操作\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **TruncateFileOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要截断的文件路径 (本地路径) |\n@| length | number | 是 | - | - | 截断位置,默认0。如果 length 小于文件长度(字节),则只有前面 length 个字节会保留在文件中,其余内容会被删除;
如果 length 大于文件长度,不做处理 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### truncate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### truncateSync(filePath, length?) @truncatesync\n对文件内容进行截断操作 (truncate 的同步版本)\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filePath | string | 是 | - | - | 要截断的文件路径 (本地路径) |\n| length | number | 否 | - | - | 截断位置,默认0。如果 length 小于文件长度(字节),则只有前面 length 个字节会保留在文件中,其余内容会被删除;如果 length 大于文件长度,不做处理 | \n\n\n##### truncateSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### readCompressedFile(options) @readcompressedfile\n读取指定压缩类型的本地文件内容\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ReadCompressedFileOptions](#readcompressedfileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要读取的文件的路径 (本地用户文件或代码包文件),app-android平台支持代码包文件目录 |\n@| compressionAlgorithm | string | 是 | - | - | 文件压缩类型,目前仅支持 'br'。 |\n@| success | (res: [ReadCompressedFileResult](#readcompressedfileresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ReadCompressedFileResult 的属性值 @readcompressedfileresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | string | 是 | - | - | - |\n\n\n##### readCompressedFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### readCompressedFileSync(filePath, compressionAlgorithm) @readcompressedfilesync\n同步读取指定压缩类型的本地文件内容\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filePath | string | 是 | - | - | 要读取的文件的路径 (本地用户文件或代码包文件),app-android平台支持代码包文件目录 |\n| compressionAlgorithm | string | 是 | - | - | 文件压缩类型,目前仅支持 'br'。 | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n\n##### readCompressedFileSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### open(options) @open\n打开文件,返回文件描述符\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [OpenFileOptions](#openfileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要追加内容的文件路径 (本地路径) |\n@| flag | \"a\" \\| \"ax\" \\| \"a+\" \\| \"ax+\" \\| \"r\" \\| \"r+\" \\| \"w\" \\| \"wx\" \\| \"w+\" \\| \"wx\" \\| \"wx+\" | 是 | - | - | 文件系统标志,默认值: 'r' |\n@| success | (res: [OpenFileSuccessResult](#openfilesuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### OpenFileSuccessResult 的属性值 @openfilesuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| fd | string | 是 | - | - | - |\n\n\n##### open 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### openSync(options) @opensync\n同步打开文件,返回文件描述符\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **OpenFileSyncOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要追加内容的文件路径 (本地路径) |\n@| flag | \"a\" \\| \"ax\" \\| \"a+\" \\| \"ax+\" \\| \"r\" \\| \"r+\" \\| \"w\" \\| \"wx\" \\| \"w+\" \\| \"wx\" \\| \"wx+\" | 是 | - | - | 文件系统标志,默认值: 'r' | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n\n##### openSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### write(options) @write\n写入文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [WriteOptions](#writeoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 |\n@| data | string | 是 | - | - | 写入的内容 |\n@| encoding | \"ascii\" \\| \"base64\" \\| \"utf-8\" | 是 | - | - | 指定写入文件的字符编码
支持:ascii base64 utf-8 |\n@| success | (res: [WriteResult](#writeresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### WriteResult 的属性值 @writeresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| bytesWritten | number | 是 | - | - | 实际被写入到文件中的字节数(注意,被写入的字节数不一定与被写入的字符串字符数相同) |\n\n\n##### write 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### writeSync(options) @writesync\n同步写入文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **WriteSyncOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 |\n@| data | string | 是 | - | - | 写入的内容 |\n@| encoding | \"ascii\" \\| \"base64\" \\| \"utf-8\" | 是 | - | - | 指定写入文件的字符编码
支持:ascii base64 utf-8 | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [WriteResult](#writeresult-values) |\n \n\n##### writeSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### close(options) @close\n关闭文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **CloseOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 需要被关闭的文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### close 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### closeSync(options) @closesync\n同步关闭文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **CloseSyncOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 需要被关闭的文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 | \n\n\n##### closeSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### fstat(options) @fstat\n获取文件的状态信息\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [FStatOptions](#fstatoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 |\n@| success | (res: [FStatSuccessResult](#fstatsuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### FStatSuccessResult 的属性值 @fstatsuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stats | [Stats](#stats-values) | 是 | - | - | Stats 对象,包含了文件的状态信息 |\n\n\n##### fstat 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### fstatSync(options) @fstatsync\n同步获取文件的状态信息\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **FStatSyncOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [Stats](#stats-values) |\n \n\n##### fstatSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### ftruncate(options) @ftruncate\n对文件内容进行截断操作\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **FTruncateFileOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 |\n@| length | number | 是 | - | - | 截断位置,默认0。如果 length 小于文件长度(字节),则只有前面 length 个字节会保留在文件中,其余内容会被删除;
如果 length 大于文件长度,不做处理 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### ftruncate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### ftruncateSync(options) @ftruncatesync\n同步对文件内容进行截断操作\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **FTruncateFileSyncOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 |\n@| length | number | 是 | - | - | 截断位置,默认0。如果 length 小于文件长度(字节),则只有前面 length 个字节会保留在文件中,其余内容会被删除;
如果 length 大于文件长度,不做处理 | \n\n\n##### ftruncateSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### readZipEntry(options) @readzipentry\n读取压缩包内的文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ReadZipEntryOptions](#readzipentryoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要读取的压缩包的路径 (本地路径),app-android平台支持代码包文件目录 |\n@| encoding | \"ascii\" \\| \"base64\" \\| \"utf-8\" | 是 | - | - | 统一指定读取文件的字符编码,只在 entries 值为\"all\"时有效。
如果 entries 值为\"all\"且不传 encoding,则以 string 格式读取文件的内容 |\n@| entries | Array\\<**EntryItem**\\> \\| null | 否 | - | - | 要读取的压缩包内的文件列表(当不传入时表示读取压缩包内所有文件) |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| path | string | 是 | - | - | 压缩包内文件路径 |\n@@| encoding | \"ascii\" \\| \"base64\" \\| \"base64\" | 是 | - | - | 指定写入文件的字符编码
支持:ascii base64 utf-8 |\n@| success | (res: [EntriesResult](#entriesresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### EntriesResult 的属性值 @entriesresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| result | Map\\ | 是 | - | - | 文件路径 |\n\n\n##### readZipEntry 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n \n","compatibility":"### getFileSystemManager 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.file.filemanager.getFileSystemManager)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-file-system-manager/get-file-system-manager.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"getUniverifyManager":{"name":"## uni.getUniverifyManager() @getuniverifymanager","description":"获取一键登录管理对象","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [UniverifyManager](#univerifymanager-values) |\n\n#### UniverifyManager 的方法 @univerifymanager-values \n\n#### preLogin(options) @prelogin\n预登录\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [PreLoginOptions](#preloginoptions-values) | 是 | - | - | 预登录参数 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | () => void | 否 | - | - | - |\n@| fail | (err: [PreLoginFail](#preloginfail-values)) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### PreLoginFail 的属性值 @preloginfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1000 \\| 1001 \\| 1002 \\| 1004 \\| 4001 \\| 30004 \\| 30005 \\| 30006 | 是 | - | - | 1000 当前应用appid尚未开通uni一键登录
1001 应用所有者账号信息异常,请检查账号一键登录服务是否正常
1002 应用所有者账号信息异常,请检查账号余额是否充足
1004 uni一键登录应用不存在
4001 参数异常
30004 其他错误
30005 预登录失败
30006 一键登录失败 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n\n##### preLogin 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.99 | 4.18 |\n\n\n#### login(options) @login\n登录\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [LoginOptions](#loginoptions-values) | 是 | - | - | 登录参数 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| univerifyStyle | **UniverifyStyle** | 否 | - | - | 登录页样式 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| fullScreen | boolean | 否 | - | - | 是否全屏 |\n@@| logoPath | string | 否 | - | - | logo路径 |\n@@| backgroundColor | string | 否 | - | - | 登录页背景色 |\n@@| loginBtnText | string | 否 | - | - | 登录按钮文字 |\n@| success | (res: [LoginSuccess](#loginsuccess-values)) => void | 否 | - | - | - |\n@| fail | (err: [LoginFail](#loginfail-values)) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### LoginSuccess 的属性值 @loginsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| openId | string | 是 | - | - | 登录授权唯一标识 |\n| accessToken | string | 是 | - | - | token |\n\n##### LoginFail 的属性值 @loginfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1000 \\| 1001 \\| 1002 \\| 1004 \\| 4001 \\| 30004 \\| 30005 \\| 30006 | 是 | - | - | 1000 当前应用appid尚未开通uni一键登录
1001 应用所有者账号信息异常,请检查账号一键登录服务是否正常
1002 应用所有者账号信息异常,请检查账号余额是否充足
1004 uni一键登录应用不存在
4001 参数异常
30004 其他错误
30005 预登录失败
30006 一键登录失败 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n\n##### login 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.99 | 4.18 |\n\n\n#### close() @close\n关闭登录页\n\n\n##### close 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.99 | 4.18 |\n\n\n#### isPreLoginValid() @ispreloginvalid\n预登录是否有效\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| boolean |\n \n\n##### isPreLoginValid 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.99 | 4.18 |\n\n \n","compatibility":"### getUniverifyManager 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.99 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/univerify.html#univerifymanager)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.login_verify.univerify.getUniverifyManager)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-univerify-manager/get-univerify-manager.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"getFacialRecognitionMetaInfo":{"name":"## uni.getFacialRecognitionMetaInfo() @getfacialrecognitionmetainfo","description":"获取阿里云实人认证meta info","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n","compatibility":"### getFacialRecognitionMetaInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.login_verify.facial-recognition-verify.getFacialRecognitionMetaInfo)\n"},"startFacialRecognitionVerify":{"name":"## uni.startFacialRecognitionVerify(faceStyle) @startfacialrecognitionverify","description":"启动人脸识别","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| faceStyle | [StartFacialRecognitionVerifyOptions](#startfacialrecognitionverifyoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| certifyId | string | 是 | - | - | certifyId 调用实人认证的id |\n@| progressBarColor | string \\| null | 否 | - | - | 活体检测页面的进度条颜色。 |\n@| screenOrientation | \"land\" \\| \"port\" | 否 | \"port\" | | 认证时屏幕方向
- land 横屏
- port 竖屏 |\n@| success | (res: [StartFacialRecognitionVerifySuccess](#startfacialrecognitionverifysuccess-values)) => void \\| null | 否 | - | - | 成功回调 |\n@| fail | (res: [IFacialRecognitionVerifyError](#ifacialrecognitionverifyerror-values)) => void \\| null | 否 | - | - | 失败回调 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 完成回调 | \n\n##### StartFacialRecognitionVerifySuccess 的属性值 @startfacialrecognitionverifysuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | 错误码 |\n| errSubject | string | 是 | - | - | 调用API的名称 |\n| errMsg | string | 是 | - | - | 错误的详细信息 |\n| cause | **SourceError** | 否 | - | - | 错误来源 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| subject | string \\| null | 否 | - | - | 源错误模块名称 |\n@| message | string | 是 | - | - | 源错误描述信息 |\n@| code | number | 是 | - | - | 源错误的错误码 |\n@| name | string | 是 | - | - | - |\n@| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | |\n\n##### IFacialRecognitionVerifyError 的属性值 @ifacialrecognitionverifyerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 10010 \\| 10012 \\| 10011 \\| 10013 \\| 10020 \\| 10001 \\| 10002 | 是 | - | - | 错误码
- 10001 certifyId 不能为空
- 10002 \"当前设备不支持\"
- 10010 刷脸异常
- 10012 网络异常
- 10011 验证中断
- 10013 刷脸验证失败
- 10020 设备设置时间异常 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### startFacialRecognitionVerify 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.login_verify.facial-recognition-verify.startFacialRecognitionVerify)\n"},"facial-recognition-verify":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/facial-recognition-verify/facial-recognition-verify.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"createRewardedVideoAd":{"name":"## uni.createRewardedVideoAd(option) @createrewardedvideoad","description":"创建激励视频广告对象","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | **CreateRewardedVideoAdOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| adpid | string | 是 | - | - | 广告位 id |\n@| urlCallback | **UrlCallbackOptions** \\| null | 否 | - | - | 服务器回调透传参数 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| userId | string \\| null | 否 | - | - | 透传到服务器端的userId |\n@@| extra | string \\| null | 否 | - | - | 透传到服务器端的extra,不推荐设置过于复杂的字符串 | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [RewardedVideoAd](#rewardedvideoad-values) |\n\n#### RewardedVideoAd 的方法 @rewardedvideoad-values \n\n#### show() @show\n广告加载成功之后,调用此方法展示广告\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\ |\n \n\n##### show 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### load() @load\n加载广告\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\ |\n \n\n##### load 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### destroy() @destroy\n销毁广告\n\n\n##### destroy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onLoad(callback) @onload\n绑定广告 load 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onLoad 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offLoad(callback) @offload\n解除绑定 load 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### offLoad 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onError(callback) @onerror\n绑定 error 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [IUniAdError](#iuniaderror-values)) => void | 是 | - | - | - | \n\n##### IUniAdError 的属性值 @iuniaderror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | 错误码
- -5001 广告位标识adpid为空,请传入有效的adpid
- -5002 无效的广告位标识adpid,请使用正确的adpid
- -5003 广告位未开通广告,请在广告平台申请并确保已审核通过
- -5004 无广告模块,打包时请配置要使用的广告模块
- -5005 广告加载失败,请稍后重试
- -5006 广告已经展示过了,请重新加载
- -5007 广告不可用或已过期,请重新请求
- -5008 广告不可用或已过期,请重新请求
- -5009 广告类型不符,请检查后再试
- -5011 打包或开通的渠道,不支持此类型广告
- -5013 广告播放失败,请重新加载 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n\n##### onError 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offError(callback) @offerror\n解除绑定 error 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [IUniAdError](#iuniaderror-values)) => void | 是 | - | - | - | \n\n\n##### offError 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onClose(callback) @onclose\n绑定 close 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [VideoAdClose](#videoadclose-values)) => void | 是 | - | - | - | \n\n##### VideoAdClose 的属性值 @videoadclose-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| isEnded | boolean | 是 | - | - | true标识广告播放完毕或者达到发放奖励的条件 |\n\n\n##### onClose 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offClose(callback) @offclose\n解除绑定 close 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [VideoAdClose](#videoadclose-values)) => void | 是 | - | - | - | \n\n\n##### offClose 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onAdClicked(callback) @onadclicked\n绑定广告可点击屏幕区域事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onAdClicked 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onVerify(callback) @onverify\n绑定 verify 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md)) => void | 是 | - | - | - | \n\n\n##### onVerify 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### createRewardedVideoAd 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 4.0 | 4.22 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ad.createRewardedVideoAd)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/rewarded-video-ad/rewarded-video-ad.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"requestPayment":{"name":"## uni.requestPayment(options) @requestpayment","description":"请求支付","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [RequestPaymentOptions](#requestpaymentoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| provider | string | 是 | - | - | 支付服务提供商,通过 [uni.getProvider](https://doc.dcloud.net.cn/uni-app-x/api/get-provider.html) 获取,目前支持支付宝支付(alipay),微信支付(wxpay) |\n@| orderInfo | string | 是 | - | - | 订单数据 |\n@| success | (result: [RequestPaymentSuccess](#requestpaymentsuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [IRequestPaymentFail](#irequestpaymentfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### RequestPaymentSuccess 的属性值 @requestpaymentsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | any \\| null | 否 | - | - | |\n\n##### IRequestPaymentFail 的属性值 @irequestpaymentfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 700600 \\| 701100 \\| 701110 \\| 700601 \\| 700602 \\| 700603 \\| 700000 \\| 700604 \\| 700800 \\| 700801 | 是 | - | - | 错误码
- 700600 正在处理中,支付结果未知(有可能已经支付成功),请查询商家订单列表中订单的支付状态
- 701100 订单支付失败。
- 701110 重复请求。
- 700601 用户中途取消。
- 700602 网络连接出错。
- 700603 支付结果未知(有可能已经支付成功),请查询商家订单列表中订单的支付状态。
- 700000 其它支付错误。
- 700604 微信没有安装。
- 700800 没有配置对应的URL Scheme。
- 700801 没有配置对应的universal Link。 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### requestPayment 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.02 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/plugins/payment.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.payment.requestPayment)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/request-payment/request-payment.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/request-payment/request-payment\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n\texport type PayItem = { id : string, name : string, provider ?: UniProvider }\r\n\texport default {\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tbtnText: \"支付宝支付\",\r\n\t\t\t\tbtnType: \"primary\",\r\n\t\t\t\torderInfo: \"\",\r\n\t\t\t\terrorCode: 0,\r\n\t\t\t\terrorMsg: \"\",\r\n\t\t\t\tcomplete: false,\r\n\t\t\t\tproviderList: [] as PayItem[]\r\n\t\t\t}\r\n\t\t},\r\n\t\tonLoad: function () {\r\n\t\t\tuni.getProvider({\r\n\t\t\t\tservice: \"payment\",\r\n\t\t\t\tsuccess: (e) => {\r\n\t\t\t\t\tconsole.log(\"payment success:\" + JSON.stringify(e));\r\n\t\t\t\t\tlet array = e.provider as string[]\r\n\t\t\t\t\tarray.forEach((value : string) => {\r\n\t\t\t\t\t\tswitch (value) {\r\n\t\t\t\t\t\t\tcase 'alipay':\r\n\t\t\t\t\t\t\t\tthis.providerList.push({\r\n\t\t\t\t\t\t\t\t\tname: '支付宝',\r\n\t\t\t\t\t\t\t\t\tid: \"alipay\",\r\n\t\t\t\t\t\t\t\t\tprovider: e.providers.find((item) : boolean => {\r\n\t\t\t\t\t\t\t\t\t\treturn item.id == 'alipay'\r\n\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t} as PayItem);\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tcase 'wxpay':\r\n\t\t\t\t\t\t\t\tthis.providerList.push({\r\n\t\t\t\t\t\t\t\t\tname: '微信',\r\n\t\t\t\t\t\t\t\t\tid: \"wxpay\",\r\n\t\t\t\t\t\t\t\t\tprovider: e.providers.find((item) : boolean => {\r\n\t\t\t\t\t\t\t\t\t\treturn item.id == 'wxpay'\r\n\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t} as PayItem);\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t},\r\n\t\t\t\tfail: (e) => {\r\n\t\t\t\t\tconsole.log(\"获取支付通道失败:\", e);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\trequestPayment(e : PayItem) {\r\n\t\t\t\tconst provider = e.id\r\n\t\t\t\tif (provider == \"alipay\") {\r\n\t\t\t\t\tthis.payAli()\r\n\t\t\t\t} else if (provider == \"wxpay\") {\n\r\n\t\t\t\t\tif (e.provider != null && e.provider?.isAppExist==false) {\r\n\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\ttitle: \"微信没有安装\",\n\t\t\t\t\t\t\ticon:'error'\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.payWX()\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tpayAli() {\r\n\t\t\t\tuni.showLoading({\r\n\t\t\t\t\ttitle: \"请求中...\"\r\n\t\t\t\t})\r\n\t\t\t\tuni.request({\r\n\t\t\t\t\turl: 'https://demo.dcloud.net.cn/payment/alipay/?total=0.01',\r\n\t\t\t\t\tmethod: 'GET',\r\n\t\t\t\t\ttimeout: 6000,\r\n\t\t\t\t\tsuccess: (res) => {\r\n\t\t\t\t\t\tthis.orderInfo = JSON.stringify(res.data);\r\n\t\t\t\t\t\tconsole.log(\"====\" + this.orderInfo)\r\n\t\t\t\t\t\tuni.hideLoading()\r\n\t\t\t\t\t\tuni.requestPayment({\r\n\t\t\t\t\t\t\tprovider: \"alipay\",\r\n\t\t\t\t\t\t\torderInfo: res.data as string,\r\n\t\t\t\t\t\t\tfail: (res) => {\r\n\t\t\t\t\t\t\t\tconsole.log(JSON.stringify(res))\r\n\t\t\t\t\t\t\t\tthis.errorCode = res.errCode\r\n\t\t\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\t\t\ticon: 'error',\r\n\t\t\t\t\t\t\t\t\ttitle: 'errorCode:' + this.errorCode\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tsuccess: (res) => {\r\n\t\t\t\t\t\t\t\tconsole.log(JSON.stringify(res))\r\n\t\t\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\t\t\ticon: 'success',\r\n\t\t\t\t\t\t\t\t\ttitle: '支付成功'\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t},\r\n\t\t\t\t\tfail: (e) => {\r\n\t\t\t\t\t\tconsole.log(e)\r\n\t\t\t\t\t\tuni.hideLoading()\r\n\t\t\t\t\t},\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tpayWX() {\r\n\t\t\t\tuni.showLoading({\r\n\t\t\t\t\ttitle: \"请求中...\"\r\n\t\t\t\t})\r\n\t\t\t\tlet url = 'https://demo.dcloud.net.cn/payment/wxpayv3.__UNI__uniappx/?total=0.01'\r\n\t\t\t\tconst res = uni.getAppBaseInfo();\n\t\t\t\tlet packageName:string | null\n\n\t\t\t\t// #ifdef APP-ANDROID\n\t\t\t\tpackageName = res.packageName\n\t\t\t\t// #endif\n\n\t\t\t\t// #ifdef APP-IOS\n\t\t\t\tpackageName = res.bundleId\n\t\t\t\t// #endif\n\n\t\t\t\tif (packageName == 'io.dcloud.hellouniappx') {//hello uniappx\n\t\t\t\t url = 'https://demo.dcloud.net.cn/payment/wxpayv3.__UNI__HelloUniAppX/?total=0.01'\n\t\t\t\t}\r\n\t\t\t\tuni.request({\r\n\t\t\t\t\turl: url,\r\n\t\t\t\t\tmethod: 'GET',\r\n\t\t\t\t\ttimeout: 6000,\r\n\t\t\t\t\theader: {\r\n\t\t\t\t\t\t\"Content-Type\": \"application/json\"\r\n\t\t\t\t\t} as UTSJSONObject,\r\n\t\t\t\t\tsuccess: (res) => {\r\n\t\t\t\t\t\tconsole.log(res.data)\r\n\t\t\t\t\t\tuni.hideLoading()\r\n\t\t\t\t\t\tuni.requestPayment({\r\n\t\t\t\t\t\t\tprovider: \"wxpay\",\r\n\t\t\t\t\t\t\torderInfo: JSON.stringify(res.data),\r\n\t\t\t\t\t\t\tfail: (res) => {\r\n\t\t\t\t\t\t\t\tconsole.log(JSON.stringify(res))\r\n\t\t\t\t\t\t\t\tthis.errorCode = res.errCode\r\n\t\t\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\t\t\tduration: 5000,\r\n\t\t\t\t\t\t\t\t\ticon: 'error',\r\n\t\t\t\t\t\t\t\t\ttitle: 'errorCode:' + this.errorCode,\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tsuccess: (res) => {\r\n\t\t\t\t\t\t\t\tconsole.log(JSON.stringify(res))\r\n\t\t\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\t\t\tduration: 5000,\r\n\t\t\t\t\t\t\t\t\ticon: 'success',\r\n\t\t\t\t\t\t\t\t\ttitle: '支付成功'\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t},\r\n\t\t\t\t\tfail: (res) => {\r\n\t\t\t\t\t\tuni.hideLoading()\r\n\t\t\t\t\t\tconsole.log(res)\r\n\t\t\t\t\t},\r\n\t\t\t\t});\r\n\t\t\t},\r\n\r\n\t\t\t//自动化测试使用\r\n\t\t\tjest_pay() {\r\n\t\t\t\tuni.requestPayment({\r\n\t\t\t\t\tprovider: \"alipay\",\r\n\t\t\t\t\torderInfo: this.orderInfo,\r\n\t\t\t\t\tfail: (res : RequestPaymentFail) => {\r\n\t\t\t\t\t\tthis.errorCode = res.errCode\r\n\t\t\t\t\t\tthis.complete = true\r\n\t\t\t\t\t},\r\n\t\t\t\t\tsuccess: (res : RequestPaymentSuccess) => {\r\n\t\t\t\t\t\tconsole.log(JSON.stringify(res))\r\n\t\t\t\t\t\tthis.complete = true\r\n\t\t\t\t\t}\r\n\t\t\t\t} as RequestPaymentOptions)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\n```\n:::"},"createWebviewContext":{"name":"## uni.createWebviewContext(webviewId, component?) @createwebviewcontext","description":"创建 web-view 组件的上下文对象,用于操作 web-view 的行为。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| webviewId | [string.WebviewIdString](/uts/data-type.md#ide-string) | 是 | - | - | - |\n| component | ComponentPublicInstance \\| null | 否 | - | - | | \n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [WebviewContext](#webviewcontext-values) \\| null | 否 |\n\n#### WebviewContext 的方法 @webviewcontext-values \n\n#### back() @back\n后退到 web-view 组件网页加载历史的上一页,如果不存在上一页则没有任何效果。\n\n\n##### back 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n\n\n#### forward() @forward\n前进到 web-view 组件网页加载历史的下一页,如果不存在下一页则没有任何效果。\n\n\n##### forward 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n\n\n#### reload() @reload\n重新加载 web-view 组件当前页面。\n\n\n##### reload 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n\n\n#### stop() @stop\n停止加载 web-view 组件当前网页,该方法不能阻止已经加载的 html 文档,但是能够阻止未完成的图片及延迟加载的资源。\n\n\n##### stop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n\n\n#### evalJS(js) @evaljs\n在网页中执行指定的js脚本,在 uvue 页面中可通过此方法向 web-view 组件加载的页面发送数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| js | string | 是 | - | - | - | \n\n\n##### evalJS 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n\n \n","compatibility":"### createWebviewContext 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.component.create-webview-context)\n"},"createVideoContext":{"name":"## uni.createVideoContext(videoId, component?) @createvideocontext","description":"创建并返回 video 上下文 videoContext 对象","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| videoId | [string.VideoIdString](/uts/data-type.md#ide-string) | 是 | - | - | - |\n| component | ComponentPublicInstance \\| null | 否 | - | - | | \n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [VideoContext](#videocontext-values) \\| null | 否 |\n\n#### VideoContext 的方法 @videocontext-values \n\n#### play() @play\n播放\n\n\n##### play 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### pause() @pause\n暂停\n\n\n##### pause 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### seek(position) @seek\n跳转到指定位置\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| position | number | 是 | - | - | 跳转到指定位置(秒) | \n\n\n##### seek 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### stop() @stop\n停止视频\n\n\n##### stop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### sendDanmu(danmu) @senddanmu\n发送弹幕\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| danmu | **Danmu** | 是 | - | - | text, color |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| text | string \\| null | 否 | - | - | 弹幕文字 |\n@| color | string \\| null | 否 | - | - | 弹幕颜色 |\n@| time | number \\| null | 否 | - | - | 显示时刻 | \n\n\n##### sendDanmu 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### playbackRate(rate) @playbackrate\n设置倍速播放\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| rate | number | 是 | - | - | , 支持倍率 0.5/0.8/1.0/1.25/1.5 | \n\n\n##### playbackRate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### requestFullScreen(direction?) @requestfullscreen\n进入全屏\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| direction | **RequestFullScreenOptions** | 否 | - | - | , 0\\|正常竖向, 90\\|屏幕逆时针90度, -90\\|屏幕顺时针90度 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| direction | number \\| null | 否 | - | | direction
- 0: 正常竖向
- 90: 屏幕逆时针90度
- -90: 屏幕顺时针90度 | \n\n\n##### requestFullScreen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### exitFullScreen() @exitfullscreen\n退出全屏\n\n\n##### exitFullScreen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n \n","compatibility":"### createVideoContext 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/video-context?id=createVideoContext)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.component.create-video-context)\n"},"createMapContext":{"name":"## uni.createMapContext(mapId, currentComponent?) @createmapcontext","description":"创建并返回 map 上下文 mapContext 对象
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| mapId | string | 是 | - | - | - |\n| currentComponent | ComponentPublicInstance | 否 | - | - | - | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [MapContext](#mapcontext-values) |\n\n#### MapContext 的方法 @mapcontext-values \n\n#### getCenterLocation(options) @getcenterlocation\n获取当前地图中心的经纬度,返回的是 gcj02 坐标系,可以用于 uni.openLocation\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [MapContextGetCenterLocationOptions](#mapcontextgetcenterlocationoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: [LocationObject](#locationobject-values)) => void | 否 | - | - | 接口调用成功的回调函数 ,res = { longitude: \"经度\", latitude: \"纬度\"} |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### LocationObject 的属性值 @locationobject-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| latitude | number | 是 | - | - | 纬度,浮点数,范围为-90~90,负数表示南纬 |\n| longitude | number | 是 | - | - | 经度,范围为-180~180,负数表示西经 |\n\n\n##### getCenterLocation 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### moveToLocation(options) @movetolocation\n将地图中心移动到当前定位点,需要配合map组件的show-location使用\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextMoveToLocationOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| latitude | number | 否 | - | - | 纬度,浮点数,范围为-90~90,负数表示南纬 |\n@| longitude | number | 否 | - | - | 经度,范围为-180~180,负数表示西经 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### moveToLocation 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### translateMarker(options) @translatemarker\n平移marker,带动画\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [MapContextTranslateMarkerOptions](#mapcontexttranslatemarkeroptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| markerId | number | 是 | - | - | 指定marker |\n@| destination | [LocationObject](#locationobject-values) | 是 | - | - | 指定marker移动到的目标点 |\n@| autoRotate | boolean | 否 | - | - | 移动过程中是否自动旋转marker |\n@| rotate | number | 否 | - | - | marker的旋转角度 |\n@| moveWithRotate | boolean | 否 | - | - | 平移和旋转同时进行,默认值false(仅微信小程序2.13.0支持) |\n@| duration | number | 否 | - | - | 动画持续时长,默认值1000ms,平移与旋转分别计算 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### MapContextTranslateMarkerOptions 的方法 @mapcontexttranslatemarkeroptions-values \n\n##### animationEnd(result) @animationend\n动画结束回调函数\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| result | any | 是 | - | - | - | \n\n\n###### animationEnd 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n\n##### translateMarker 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### includePoints(options) @includepoints\n缩放视野展示所有经纬度\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextIncludePointsOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| points | Array\\<[LocationObject](#locationobject-values)\\> | 是 | - | - | 要显示在可视区域内的坐标点列表,[{latitude, longitude}\\] |\n@| padding | Array\\ | 否 | - | - | 坐标点形成的矩形边缘到地图边缘的距离,单位像素。格式为\\[上,右,下,左]安卓上只能识别数组第一项,上下左右的padding一致。开发者工具暂不支持padding参数。 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### includePoints 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### getRegion(options) @getregion\n获取当前地图的视野范围\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [MapContextGetRegionOptions](#mapcontextgetregionoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: [MapContextGetRegionResult](#mapcontextgetregionresult-values)) => void | 否 | - | - | 接口调用成功的回调函数,res = {southwest, northeast},西南角与东北角的经纬度 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### MapContextGetRegionResult 的属性值 @mapcontextgetregionresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| southwest | [LocationObject](#locationobject-values) | 是 | - | - | 西南角的经纬度 |\n| northeast | [LocationObject](#locationobject-values) | 是 | - | - | 东北角的经纬度 |\n\n\n##### getRegion 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### getScale(options) @getscale\n获取当前地图的缩放级别\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [MapContextGetScaleOptions](#mapcontextgetscaleoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: [MapContextGetScaleResult](#mapcontextgetscaleresult-values)) => void | 否 | - | - | 接口调用成功的回调函数,res = {scale} |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### MapContextGetScaleResult 的属性值 @mapcontextgetscaleresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| scale | number | 是 | - | - | 地图缩放级别 |\n\n\n##### getScale 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### addCustomLayer(options) @addcustomlayer\n添加个性化图层\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextAddCustomLayerOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| layerId | string | 是 | - | - | 个性化图层id |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### addCustomLayer 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### addGroundOverlay(options) @addgroundoverlay\n创建自定义图片图层,图片会随着地图缩放而缩放\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextAddGroundOverlayOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| id | string | 是 | - | - | 图片图层 id |\n@| src | string | 是 | - | - | 图片路径,支持网络图片、临时路径、代码包路径 |\n@| bounds | **Bounds** | 是 | - | - | 图片覆盖的经纬度范围 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| southwest | [LocationObject](#locationobject-values) | 是 | - | - | 西南角的经纬度 |\n@@| northeast | [LocationObject](#locationobject-values) | 是 | - | - | 东北角的经纬度 |\n@| visible | boolean | 否 | - | - | 是否可见 |\n@| zIndex | number | 否 | - | - | 图层绘制顺序 |\n@| opacity | number | 否 | - | - | 图层透明度 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### addGroundOverlay 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### addMarkers(options) @addmarkers\n添加 marker\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextAddMarkersOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| markers | Array\\ | 是 | - | - | 同传入 map 组件的 marker 属性 |\n@| clear | boolean | 是 | - | - | 是否先清空地图上所有 marker |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### addMarkers 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### fromScreenLocation(options) @fromscreenlocation\n获取屏幕上的点对应的经纬度,坐标原点为地图左上角\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextFromScreenLocationOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| x | number | 是 | - | - | x 坐标值 |\n@| y | number | 是 | - | - | y 坐标值 |\n@| success | (result: [LocationObject](#locationobject-values)) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### fromScreenLocation 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### initMarkerCluster(options) @initmarkercluster\n初始化点聚合的配置,未调用时采用默认配置\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextInitMarkerClusterOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| enableDefaultStyle | boolean | 是 | - | - | 启用默认的聚合样式 |\n@| zoomOnClick | boolean | 是 | - | - | 点击已经聚合的标记点时是否实现聚合分离 |\n@| gridSize | number | 是 | - | - | 聚合算法的可聚合距离,即距离小于该值的点会聚合至一起,以像素为单位 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### initMarkerCluster 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### moveAlong(options) @movealong\n沿指定路径移动 marker,用于轨迹回放等场景。动画完成时触发回调事件,若动画进行中,对同一 marker 再次调用 moveAlong 方法,前一次的动画将被打断。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextMoveAlongOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| markerId | number | 是 | - | - | 指定 marker |\n@| path | Array\\<[LocationObject](#locationobject-values)\\> | 是 | - | - | 移动路径的坐标串,坐标点格式 {longitude, latitude} |\n@| autoRotate | boolean | 否 | - | - | 根据路径方向自动改变 marker 的旋转角度 |\n@| duration | number | 是 | - | - | 平滑移动的时间 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### moveAlong 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### openMapApp(options) @openmapapp\n拉起地图APP选择导航。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextOpenMapAppOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| destination | string | 是 | - | - | 目的地名称 |\n@| latitude | number | 是 | - | - | 目的地纬度 |\n@| longitude | number | 是 | - | - | 目的地经度 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### openMapApp 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### removeCustomLayer(options) @removecustomlayer\n移除个性化图层\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextRemoveCustomLayerOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| layerId | string | 是 | - | - | 个性化图层id |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### removeCustomLayer 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### removeGroundOverlay(options) @removegroundoverlay\n移除自定义图片图层\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextRemoveGroundOverlayOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| id | string | 是 | - | - | 图片图层 id |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### removeGroundOverlay 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### removeMarkers(options) @removemarkers\n移除 marker\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextRemoveMarkersOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| markerIds | Array\\ | 是 | - | - | 要被删除的marker的id属性组成的数组 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### removeMarkers 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setCenterOffset(options) @setcenteroffset\n设置地图中心点偏移,向后向下为增长,屏幕比例范围(0.25~0.75),默认偏移为[0.5, 0.5\\]\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextSetCenterOffsetOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| offset | Array\\ | 是 | - | - | 偏移量,两位数组 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### setCenterOffset 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### toScreenLocation(options) @toscreenlocation\n获取经纬度对应的屏幕坐标,坐标原点为地图左上角。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextToScreenLocationOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| latitude | number | 是 | - | - | 纬度 |\n@| longitude | number | 是 | - | - | 经度 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### toScreenLocation 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### updateGroundOverlay(options) @updategroundoverlay\n更新自定义图片图层。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextUpdateGroundOverlayOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| id | string | 是 | - | - | 图片图层 id |\n@| src | string | 是 | - | - | 图片路径,支持网络图片、临时路径、代码包路径 |\n@| bounds | [Bounds](#bounds-values) | 是 | - | - | 图片路径,支持网络图片、临时路径、代码包路径 |\n@| visible | boolean | 否 | - | - | 是否可见 |\n@| zIndex | number | 否 | - | - | 图层绘制顺序 |\n@| opacity | number | 否 | - | - | 图层透明度 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### updateGroundOverlay 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### on(event, callback) @on\n监听地图事件。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| event | \"markerClusterCreate\" \\| \"markerClusterClick\" | 是 | - | - | - |\n| callback | (args?: Array\\) => any | 是 | - | - | - | \n\n\n##### on 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### $getAppMap() @$getappmap\n获取原生地图对象 plus.maps.Map\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| any |\n \n\n##### $getAppMap 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### createMapContext 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [createMapContext](https://doc.dcloud.net.cn/uni-app-x/api/create-map-context.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.component.create-map-context)\n"},"getProvider":{"name":"## uni.getProvider(options) @getprovider","description":"获取服务供应商","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetProviderOptions](#getprovideroptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| service | string | 是 | - | - | 服务类型,可取值“payment”
- payment: 支付 (Alipay、Wxpay) |\n@| success | (result: [GetProviderSuccess](#getprovidersuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调 |\n@| fail | (result: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetProviderSuccess 的属性值 @getprovidersuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| service | string | 是 | - | - | 服务类型
- payment: 支付 |\n| provider | Array\\ | 是 | - | - | 得到的服务供应商 |\n| providers | Array\\<**UniProvider**\\> | 是 | - | | 得到的服务供应商服务对象 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| id | string | 是 | - | - | 服务供应商标识 |\n@| description | string | 是 | - | - | 服务供应商描述 |\n@| isAppExist | boolean | 是 | - | - | 判断服务供应商依赖的App是否安装(仅支持微信支付) |\n| errMsg | string | 是 | - | - | 错误信息 |\n","returnValue":"","compatibility":"### getProvider 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.11 | 4.18 |\n","tutorial":"\n### 参见\n- [getProvider](https://doc.dcloud.net.cn/uni-app-x/api/get-provider.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.tripartite.get-provider)\n"},"get-provider":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-provider/get-provider.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\r\n\r\n\r\n\r\n\n\n```"},"general_type":{"name":"## 通用类型\n","param":"### GeneralCallbackResult \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | 错误信息 |\n"}} \ No newline at end of file +{"getApp":{"name":"## getApp() @getapp","description":"`getApp()` 函数用于获取当前应用实例,可通过应用实例调用 App.uvue methods 中定义的方法。","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| any |\n \n","compatibility":"### getApp 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/tutorial/page.html#getapp)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.global.getApp)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-app/get-app.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-app/get-app\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { state, setLifeCycleNum } from '@/store/index.uts'\r\n\r\n type MyGlobalData = {\r\n str : string,\r\n num : number,\r\n bool : boolean,\r\n obj : UTSJSONObject,\r\n null : string | null,\r\n arr : number[],\r\n mySet : string[],\r\n myMap : UTSJSONObject,\r\n func : () => string\r\n }\r\n\r\n export default {\r\n data() {\r\n return {\r\n originGlobalData: {\r\n str: '',\r\n num: 0,\r\n bool: false,\r\n obj: {\r\n str: '',\r\n num: 0,\r\n bool: false\r\n } as UTSJSONObject,\r\n null: null,\r\n arr: [] as number[],\r\n mySet: [] as string[],\r\n myMap: {},\r\n func: () : string => ''\r\n } as MyGlobalData,\r\n originGlobalDataFuncRes: '',\r\n newGlobalData: {\r\n str: '',\r\n num: 0,\r\n bool: false,\r\n obj: {\r\n str: '',\r\n num: 0,\r\n bool: false\r\n } as UTSJSONObject,\r\n null: null,\r\n arr: [] as number[],\r\n mySet: [] as string[],\r\n myMap: {},\r\n func: () : string => ''\r\n } as MyGlobalData,\r\n newGlobalDataFuncRes: '',\r\n lifeCycleNum: 0,\r\n }\r\n },\r\n onReady() {\r\n this.lifeCycleNum = state.lifeCycleNum\r\n },\r\n methods: {\r\n getGlobalData() {\r\n const app = getApp()\r\n\r\n this.originGlobalData.str = app.globalData.str\r\n this.originGlobalData.num = app.globalData.num\r\n this.originGlobalData.bool = app.globalData.bool\r\n this.originGlobalData.obj = app.globalData.obj\r\n this.originGlobalData.null = app.globalData.null\r\n this.originGlobalData.arr = app.globalData.arr\r\n app.globalData.mySet.forEach((value : string) => {\r\n this.originGlobalData.mySet.push(value)\r\n })\r\n app.globalData.myMap.forEach((value : any, key : string) => {\r\n this.originGlobalData.myMap[key] = value\r\n })\r\n this.originGlobalData.func = app.globalData.func\r\n this.originGlobalDataFuncRes = this.originGlobalData.func()\r\n },\r\n setGlobalData() {\r\n const app = getApp()\r\n\r\n app.globalData.str = 'new globalData str'\r\n app.globalData.num = 100\r\n app.globalData.bool = true\r\n app.globalData.obj = {\r\n str: 'new globalData obj str',\r\n num: 200,\r\n bool: true\r\n }\r\n app.globalData.null = 'not null'\r\n app.globalData.arr = [1, 2, 3]\r\n app.globalData.mySet = new Set(['a', 'b', 'c'])\r\n app.globalData.myMap = new Map([\r\n ['a', 1],\r\n ['b', 2],\r\n ['c', 3]\r\n ])\r\n app.globalData.func = () : string => {\r\n return 'new globalData func'\r\n }\r\n\r\n this.newGlobalData.str = app.globalData.str\r\n this.newGlobalData.num = app.globalData.num\r\n this.newGlobalData.bool = app.globalData.bool\r\n this.newGlobalData.obj = app.globalData.obj\r\n this.newGlobalData.null = app.globalData.null\r\n this.newGlobalData.arr = app.globalData.arr\r\n app.globalData.mySet.forEach((value : string) => {\r\n this.newGlobalData.mySet.push(value)\r\n })\r\n app.globalData.myMap.forEach((value : any, key : string) => {\r\n this.newGlobalData.myMap[key] = value\r\n })\r\n this.newGlobalData.func = app.globalData.func\r\n this.newGlobalDataFuncRes = this.newGlobalData.func()\r\n },\r\n _increasetLifeCycleNum: function () {\r\n const app = getApp()\r\n app.increasetLifeCycleNum()\r\n this.lifeCycleNum = state.lifeCycleNum\r\n },\r\n // 自动化测试\r\n setLifeCycleNum(num : number) {\r\n setLifeCycleNum(num)\r\n }\r\n },\r\n }\r\n\n```\n:::"},"getCurrentPages":{"name":"## getCurrentPages() @getcurrentpages","description":"`getCurrentPages()` 函数用于获取当前页面栈的实例,以数组形式按栈的顺序给出,数组中的元素为页面实例,第一个元素为首页,最后一个元素为当前页面。","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[Page](#page-values)\\> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| route | string | 是 | - | - | 页面的路由地址 |\n@| options | Map\\ | 是 | - | - | 页面的路由参数信息,目前web端options类型为Object,后续可能会调整 |\n#### Page 的方法 @page-values \n\n#### $getPageStyle() @$getpagestyle\n获取当前页面样式 \\
包含 pages.json 页面下的 style 节点属性和根节点 globalStyle 属性\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) |\n \n\n##### $getPageStyle 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.13 | 4.13 | 4.13 |\n\n\n##### 参见\n- [$getPageStyle](https://doc.dcloud.net.cn/uni-app-x/api/get-current-pages.html#getPageStyle)\n\n#### $setPageStyle(style) @$setpagestyle\n设置当前页面样式 \\
支持 pages.json 页面下的 style 节点属性和根节点 globalStyle 属性\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| style | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) | 是 | - | - | 如果属性名存在,且类型为UTSJSONObject返回对应的结果,不存在返回null | \n\n\n##### $setPageStyle 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.13 | 4.13 | 4.13 |\n\n\n##### 参见\n- [$setPageStyle](https://doc.dcloud.net.cn/uni-app-x/api/get-current-pages.html#setPageStyle)\n \n","compatibility":"### getCurrentPages 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/tutorial/page.html#getcurrentpages)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.global.getCurrentPages)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-current-pages/get-current-pages.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-current-pages/get-current-pages\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { PageStyleItem, PageStyleArray } from './page-style.uts';\r\n\r\n class Page {\r\n constructor(public route : string) {\r\n }\r\n }\r\n\r\n export default {\r\n data() {\r\n return {\r\n checked: false,\r\n pages: [] as Page[],\r\n PageStyleArray: PageStyleArray as PageStyleItem[],\r\n currentPageStyle: {} as UTSJSONObject,\r\n }\r\n },\r\n computed: {\r\n pageStyleText() : string {\r\n return JSON.stringify(this.currentPageStyle)\r\n }\r\n },\r\n onLoad() {\r\n this.getPageStyle();\r\n },\r\n onPullDownRefresh() {\r\n setTimeout(() => {\r\n uni.stopPullDownRefresh()\r\n }, 2000)\r\n },\r\n methods: {\r\n startPullDownRefresh() {\r\n uni.startPullDownRefresh()\r\n },\r\n _getCurrentPages: function () {\r\n this.pages.length = 0\r\n const pages = getCurrentPages()\r\n this.pages.push(new Page(pages[0].route))\r\n if (this.pages[0].route.includes('/tabBar/')) {\r\n this.checked = true\r\n }\r\n for (let i = 1; i < pages.length; i++) {\r\n this.pages.push(new Page(pages[i].route))\r\n if (pages[i].route.includes('/tabBar/')) {\r\n this.checked = false\r\n }\r\n }\r\n },\r\n /// get-set-page-style\r\n radioChange(key : string, e : RadioGroupChangeEvent) {\r\n this.setStyleValue(key, e.detail.value);\r\n },\r\n sliderChange(key : string, e : UniSliderChangeEvent) {\r\n this.setStyleValue(key, e.detail.value);\r\n },\r\n switchChange(key : string, e : UniSwitchChangeEvent) {\r\n this.setStyleValue(key, e.detail.value);\r\n },\r\n setStyleValue(key : string, value : any) {\r\n const style = {}\r\n style[key] = value\r\n this.setPageStyle(style)\r\n this.getPageStyle()\r\n },\r\n getPageStyle() : UTSJSONObject {\r\n const pages = getCurrentPages();\r\n const currentPage = pages[pages.length - 1];\r\n this.currentPageStyle = currentPage.$getPageStyle()\r\n return this.currentPageStyle;\r\n },\r\n setPageStyle(style : UTSJSONObject) {\r\n console.log('setPageStyle:', style);\r\n const pages = getCurrentPages();\r\n const currentPage = pages[pages.length - 1];\r\n currentPage.$setPageStyle(style);\r\n },\r\n // getCurrentPage(): Page {\r\n // const pages = getCurrentPages();\r\n // const currentPage = pages[pages.length - 1];\r\n // return currentPage;\r\n // }\r\n },\r\n }\r\n\n```\n:::"},"env":{"name":"## env","description":"","param":"### env 的属性值 @env-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| USER_DATA_PATH | string | 是 | - | | 应用专属存储空间的外置存储空间根目录下的files目录 |\n| CACHE_PATH | string | 是 | - | | 应用专属存储空间的外置存储空间根目录下的cache目录 |\n| SANDBOX_PATH | string | 是 | - | | 应用专属存储空间的外置存储空间根目录(caches/files) |\n","compatibility":"","returnValue":"","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.env)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/env/env.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"$on":{"name":"## uni.$on(eventName, callback) @$on","description":"监听自定义事件。事件可以由 uni.$emit 触发。回调函数会接收 uni.$emit 传递的参数。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| eventName | string | 是 | - | - | - |\n| callback | () => void | 是 | - | - | - | \n","returnValue":"","compatibility":"### $on 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [$on](https://doc.dcloud.net.cn/uni-app-x/api/event-bus.html#on)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.eventBus.$on)\n"},"$once":{"name":"## uni.$once(eventName, callback) @$once","description":"监听一个自定义事件。事件只触发一次,在第一次触发之后移除事件监听器。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| eventName | string | 是 | - | - | - |\n| callback | () => void | 是 | - | - | - | \n","returnValue":"","compatibility":"### $once 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [$once](https://doc.dcloud.net.cn/uni-app-x/api/event-bus.html#once)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.eventBus.$once)\n"},"$off":{"name":"## uni.$off(eventName, callback?) @$off","description":"移除自定义事件监听器。如果提供了事件名和回调,则只移除这个回调的监听器。
4.13+ 开始支持第二个参数为可选,如果仅提供事件名,则移除该事件的所有监听器。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| eventName | string | 是 | - | - | - |\n| callback | () => void \\| null | 否 | - | - | | \n","returnValue":"","compatibility":"### $off 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [$off](https://doc.dcloud.net.cn/uni-app-x/api/event-bus.html#off)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.eventBus.$off)\n"},"$emit":{"name":"## uni.$emit(eventName, args?) @$emit","description":"触发自定义事件,附加的参数会传递给事件监听器。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| eventName | string | 是 | - | - | - |\n| args | any \\| null | 否 | - | - | | \n","returnValue":"","compatibility":"### $emit 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [$emit](https://doc.dcloud.net.cn/uni-app-x/api/event-bus.html#emit)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.eventBus.$emit)\n"},"eventBus":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/event-bus/event-bus.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/event-bus/event-bus\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n export default {\r\n data() {\r\n return {\r\n log: [] as string[],\r\n }\r\n },\r\n methods: {\r\n fn(res : string) {\r\n this.log.push(res)\r\n },\n fn2(res : string) {\n this.log.push(res)\n },\r\n on() {\r\n uni.$on('test', this.fn)\r\n },\n on2() {\n uni.$on('test', this.fn2)\n },\r\n once() {\r\n uni.$once('test', this.fn)\r\n },\r\n off() {\r\n uni.$off('test', this.fn)\r\n },\n offAll() {\n uni.$off('test')\n },\r\n emit() {\r\n uni.$emit('test', 'msg:' + Date.now())\r\n },\r\n clear() {\r\n this.log.length = 0\r\n },\r\n },\r\n }\r\n\n```\n:::"},"addInterceptor":{"name":"## uni.addInterceptor(name, interceptor) @addinterceptor","description":"添加拦截器","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| name | string | 是 | - | - | 需要拦截的 API 名称 |\n| interceptor | Interceptor | 是 | - | - | 拦截器 | \n","returnValue":"","compatibility":"### addInterceptor 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.97 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.interceptor.addInterceptor)\n"},"removeInterceptor":{"name":"## uni.removeInterceptor(name, interceptor?) @removeinterceptor","description":"删除拦截器","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| name | string | 是 | - | - | 需要删除拦截器的 API 名称 |\n| interceptor | Interceptor \\| null | 否 | - | - | 拦截器 | \n","returnValue":"","compatibility":"### removeInterceptor 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.97 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.interceptor.removeInterceptor)\n"},"interceptor":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/interceptor/interceptor.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/interceptor/interceptor\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n const interceptor = {\r\n invoke: function (options : NavigateToOptions) {\r\n console.log('拦截 navigateTo 接口传入参数为:', options)\r\n const url = './page2'\r\n uni.showToast({\r\n title: `重定向到页面:${url}`\r\n })\r\n options.url = url\r\n },\r\n success: function (res : NavigateBackSuccess) {\r\n console.log('拦截 navigateTo 接口 success 返回参数为:', res)\r\n },\r\n fail: function (err : NavigateToFail) {\r\n console.log('拦截 navigateTo 接口 fail 返回参数为:', err)\r\n },\r\n complete: function (res : NavigateToComplete) {\r\n console.log('拦截 navigateTo 接口 complete 返回参数为:', res)\r\n }\r\n } as Interceptor\r\n export default {\r\n data() {\r\n return {\r\n msg: \"会跳转到测试页面1\"\r\n }\r\n },\r\n beforeUnmount() {\r\n // 移除 navigateTo 所有拦截器\r\n uni.removeInterceptor('navigateTo')\r\n },\r\n methods: {\r\n addInterceptor() {\r\n uni.addInterceptor('navigateTo', interceptor)\r\n uni.showToast({\r\n title: '页面跳转已拦截'\r\n })\r\n this.msg = \",路由被劫持到测试页面2\"\r\n },\r\n removeInterceptor() {\r\n uni.removeInterceptor('navigateTo', interceptor)\r\n uni.showToast({\r\n title: '拦截器已移除'\r\n })\r\n this.msg = \"会跳转到测试页面1\"\r\n },\r\n navigateTo() {\r\n uni.navigateTo({\r\n url: './page1',\r\n success(res) {\r\n console.log('res:', res)\r\n },\r\n fail(err) {\r\n console.error('err:', err)\r\n },\r\n complete(res) {\r\n console.log('res:', res)\r\n }\r\n })\r\n }\r\n }\r\n }\r\n\n```\n:::"},"getLaunchOptionsSync":{"name":"## uni.getLaunchOptionsSync() @getlaunchoptionssync","description":"获取本次启动时的参数。返回值与App.onLaunch的回调参数一致
","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **OnLaunchOptions** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| path | string | 是 | - | - | - | \n","compatibility":"### getLaunchOptionsSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [getLaunchOptionsSync](https://doc.dcloud.net.cn/uni-app-x/api/get-launch-options-sync.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.getLaunchOptionsSync)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-launch-options-sync/get-launch-options-sync.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-launch-options-sync/get-launch-options-sync\n>Template\n```vue\n\n\n\n\n```\n>Script\n```uts\n\nexport default {\n data() {\n return {\n checked: false,\n homePagePath: 'pages/tabBar/component',\n launchOptionsPath: '',\n }\n },\n methods: {\n getLaunchOptionsSync() {\n const launchOptions = uni.getLaunchOptionsSync()\n this.launchOptionsPath = launchOptions.path\n\n if (launchOptions.path == this.homePagePath) {\n this.checked = true\n }\n },\n },\n}\n\n```\n:::"},"exit":{"name":"## uni.exit(options?) @exit","description":"退出当前应用","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ExitOptions](#exitoptions-values) \\| null | 否 | - | - | uni.exit参数定义 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [ExitSuccess](#exitsuccess-values)) => void \\| null | 否 | - | - | uni.exit成功回调函数定义 |\n@| fail | (res: [IExitError](#iexiterror-values)) => void \\| null | 否 | - | - | uni.exit失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.exit完成回调函数定义 | \n\n##### ExitSuccess 的属性值 @exitsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n\n##### IExitError 的属性值 @iexiterror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 12001 \\| 12002 | 是 | - | - | 错误码
- 12001: 系统不支持
- 12002: 未知错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### exit 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | x |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.exit)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/exit/exit.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n```"},"getProvider":{"name":"## uni.getProvider(options) @getprovider","description":"获取服务供应商","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetProviderOptions](#getprovideroptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| service | string | 是 | - | - | 服务类型,可取值“payment”
- payment: 支付 (Alipay、Wxpay) |\n@| success | (result: [GetProviderSuccess](#getprovidersuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调 |\n@| fail | (result: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetProviderSuccess 的属性值 @getprovidersuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| service | string | 是 | - | - | 服务类型
- payment: 支付 |\n| provider | Array\\ | 是 | - | - | 得到的服务供应商 |\n| providers | Array\\<**UniProvider**\\> | 是 | - | | 得到的服务供应商服务对象 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| id | string | 是 | - | - | 服务供应商标识 |\n@| description | string | 是 | - | - | 服务供应商描述 |\n@| isAppExist | boolean | 是 | - | - | 判断服务供应商依赖的App是否安装(仅支持微信支付) |\n| errMsg | string | 是 | - | - | 错误信息 |\n","returnValue":"","compatibility":"### getProvider 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.11 | 4.18 |\n","tutorial":"\n### 参见\n- [getProvider](https://doc.dcloud.net.cn/uni-app-x/api/get-provider.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.getProvider)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-provider/get-provider.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\r\n\r\n\r\n\r\n\n\n```"},"getPerformance":{"name":"## uni.getPerformance() @getperformance","description":"返回一个Performance对象实例
","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [Performance](#performance-values) |\n\n#### Performance 的方法 @performance-values \n\n#### createObserver(callback) @createobserver\n创建全局性能事件监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (entries: [PerformanceObserverEntryList](#performanceobserverentrylist-values)) => void | 是 | - | - | - | \n\n##### PerformanceObserverEntryList 的方法 @performanceobserverentrylist-values \n\n##### getEntries() @getentries\n该方法返回当前列表中的所有性能数据\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<**PerformanceEntry**\\> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| entryType | string | 是 | - | - | 指标类型 |\n@| name | string | 是 | - | - | 指标名称 |\n@| duration | number | 是 | - | - | 耗时 ms。仅对于表示阶段的指标有效。 |\n@| startTime | number | 是 | - | - | 开始时间,不同指标的具体含义会有差异。 |\n@| path | string \\| null | 否 | - | - | 页面路径。仅 render 和 navigation 类型指标有效。 |\n@| referrerPath | string \\| null | 否 | - | - | 页面跳转来源页面路径。仅 route 指标有效。 |\n@| pageId | number \\| null | 否 | - | - | path 对应页面实例 Id(随机生成,不保证递增)。仅 render/navigation 指标有效。 |\n@| referrerPageId | number \\| null | 否 | - | - | referrerPath对应页面实例 Id(随机生成,不保证递增)。仅 route 指标有效。 |\n@| navigationStart | number \\| null | 否 | - | - | 路由真正响应开始时间。仅 navigation 类型指标有效。 |\n@| navigationType | string \\| null | 否 | - | - | 路由详细类型,与路由方法对应。仅 navigation 类型指标有效。 |\n@| initDataRecvTime | number \\| null | 否 | - | - | 首次渲染参数在渲染层收到的时间。仅 firstRender 指标有效。 |\n@| viewLayerRenderEndTime | number \\| null | 否 | - | - | 渲染层执行渲染结束时间。仅 firstRender 指标有效。 | \n\n###### getEntries 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getEntriesByType(entryType) @getentriesbytype\n获取当前列表中所有类型为 \\[entryType]的性能数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| entryType | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[PerformanceEntry](#performanceentry-values)\\> |\n \n\n###### getEntriesByType 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getEntriesByName(name, entryType) @getentriesbyname\n获取当前列表中所有名称为 \\[name] 且类型为 [entryType]的性能数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| name | string | 是 | - | - | - |\n| entryType | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[PerformanceEntry](#performanceentry-values)\\> |\n \n\n###### getEntriesByName 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [PerformanceObserver](#performanceobserver-values) |\n\n##### PerformanceObserver 的方法 @performanceobserver-values \n\n##### observe(options) @observe\n开始监听\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **PerformanceObserverOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| buffered | boolean | 否 | - | - | - |\n@| entryTypes | Array\\ | 否 | - | - | - |\n@| type | string | 否 | - | - | - | \n\n\n###### observe 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### disconnect() @disconnect\n停止监听\n\n\n###### disconnect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n\n##### createObserver 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### getEntries() @getentries\n该方法返回当前缓冲区中的所有性能数据\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[PerformanceEntry](#performanceentry-values)\\> |\n \n\n##### getEntries 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### getEntriesByType(entryType) @getentriesbytype\n获取当前缓冲区中所有类型为 \\[entryType]的性能数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| entryType | string | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[PerformanceEntry](#performanceentry-values)\\> |\n \n\n##### getEntriesByType 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### getEntriesByName(name, entryType) @getentriesbyname\n获取当前缓冲区中所有名称为 \\[name] 且类型为 [entryType]的性能数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| name | string | 是 | - | - | - |\n| entryType | string | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[PerformanceEntry](#performanceentry-values)\\> |\n \n\n##### getEntriesByName 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setBufferSize(size) @setbuffersize\n设置缓冲区大小,默认缓冲 30 条性能数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| size | number | 是 | - | - | - | \n\n\n##### setBufferSize 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### getPerformance 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.91 | x |\n","tutorial":"\n### 参见\n- [getPerformance](https://doc.dcloud.net.cn/uni-app-x/api/getPerformance)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.base.get-performance)\n"},"navigateTo":{"name":"## uni.navigateTo(options) @navigateto","description":"保留当前页面,跳转到应用内的某个页面
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [NavigateToOptions](#navigatetooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string ([string.PageURIString](/uts/data-type.md#ide-string)) | 是 | - | | 需要跳转的应用内非 tabBar 的页面的路径 , 路径后可以带参数 |\n@| animationType | string \\| null | 否 | - | | 窗口显示的动画类型
- auto: 自动选择动画效果
- none: 无动画效果
- slide-in-right: 从右侧横向滑动效果
- slide-in-left: 左侧横向滑动效果
- slide-in-top: 从上侧竖向滑动效果
- slide-in-bottom: 从下侧竖向滑动效果
- fade-in: 从透明到不透明逐渐显示效果
- zoom-out: 从小到大逐渐放大显示效果
- zoom-fade-out: 从小到大逐渐放大并且从透明到不透明逐渐显示效果
- pop-in: 从右侧平移入栈动画效果
- UnionType => 'auto' \\| 'none' \\| 'slide-in-right' \\| 'slide-in-left' \\| 'slide-in-top' \\| 'slide-in-bottom' \\| 'fade-in' \\| 'zoom-out' \\| 'zoom-fade-out' \\| 'pop-in' |\n@| events | any \\| null | 否 | - | | 页面间通信接口,用于监听被打开页面发送到当前页面的数据 |\n@| success | (result: AsyncApiSuccessResult) => void \\| null | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (result: [NavigateToFail](#navigatetofail-values)) => void \\| null | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void \\| null | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### NavigateToFail 的属性值 @navigatetofail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### navigateTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/router?id=navigateto)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.navigator.navigateTo)\n"},"reLaunch":{"name":"## uni.reLaunch(options) @relaunch","description":"关闭所有页面,打开到应用内的某个页面
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ReLaunchOptions](#relaunchoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string ([string.PageURIString](/uts/data-type.md#ide-string)) | 是 | - | | 需要跳转的应用内页面路径 , 路径后可以带参数。参数与路径之间使用?分隔,参数键与参数值用=相连,不同参数用&分隔;如 'path?key=value&key2=value2',如果跳转的页面路径是 tabBar 页面则不能带参数 |\n@| success | (result: AsyncApiSuccessResult) => void \\| null | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (result: [ReLaunchFail](#relaunchfail-values)) => void \\| null | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void \\| null | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ReLaunchFail 的属性值 @relaunchfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### reLaunch 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/router?id=relaunch)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.navigator.reLaunch)\n"},"navigateBack":{"name":"## uni.navigateBack(options?) @navigateback","description":"关闭当前页面,返回上一页面或多级页面
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [NavigateBackOptions](#navigatebackoptions-values) \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| delta | number \\| null | 否 | - | | 返回的页面数,如果 delta 大于现有页面数,则返回到首页 |\n@| animationType | string \\| null | 否 | - | | 窗口关闭的动画类型
- auto: 自动选择动画效果
- none: 无动画效果
- slide-out-right: 横向向右侧滑出屏幕动画
- slide-out-left: 横向向左侧滑出屏幕动画
- slide-out-top: 竖向向上侧滑出屏幕动画
- slide-out-bottom: 竖向向下侧滑出屏幕动画
- fade-out: 从不透明到透明逐渐隐藏动画
- zoom-in: 从大逐渐缩小关闭动画
- zoom-fade-in: 从大逐渐缩小并且从不透明到透明逐渐隐藏关闭动画
- pop-out: 从右侧平移出栈动画效果
- UnionType => 'auto' \\| 'none' \\| 'slide-out-right' \\| 'slide-out-left' \\| 'slide-out-top' \\| 'slide-out-bottom' \\| 'fade-out' \\| 'zoom-in' \\| 'zoom-fade-in' \\| 'pop-out' |\n@| success | (result: AsyncApiSuccessResult) => void \\| null | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (result: [NavigateBackFail](#navigatebackfail-values)) => void \\| null | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void \\| null | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### NavigateBackFail 的属性值 @navigatebackfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### navigateBack 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/router?id=navigateback)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.navigator.navigateBack)\n"},"redirectTo":{"name":"## uni.redirectTo(options) @redirectto","description":"关闭当前页面,跳转到应用内的某个页面
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [RedirectToOptions](#redirecttooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string ([string.PageURIString](/uts/data-type.md#ide-string)) | 是 | - | | 需要跳转的应用内非 tabBar 的页面的路径 , 路径后可以带参数 |\n@| success | (result: AsyncApiSuccessResult) => void \\| null | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (result: [RedirectToFail](#redirecttofail-values)) => void \\| null | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void \\| null | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### RedirectToFail 的属性值 @redirecttofail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### redirectTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/router?id=redirectto)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.navigator.redirectTo)\n"},"switchTab":{"name":"## uni.switchTab(options) @switchtab","description":"跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SwitchTabOptions](#switchtaboptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string ([string.PageURIString](/uts/data-type.md#ide-string)) | 是 | - | | 需要跳转的 tabBar 页面的路径,路径后不能带参数 |\n@| success | (result: AsyncApiSuccessResult) => void \\| null | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (result: [SwitchTabFail](#switchtabfail-values)) => void \\| null | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void \\| null | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SwitchTabFail 的属性值 @switchtabfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### switchTab 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/router?id=switchtab)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.navigator.switchTab)\n"},"navigator":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/navigator/navigator.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/navigator/navigator\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { state, setLifeCycleNum } from '@/store/index.uts'\r\n\r\n export default {\r\n data() {\r\n return {\r\n onLoadTime: 0,\r\n onShowTime: 0,\r\n onReadyTime: 0,\r\n onHideTime: 0,\n animationTypeList: [\n // #ifdef APP-ANDROID\n 'slide-in-right',\n 'slide-in-left',\n 'slide-in-top',\n 'slide-in-bottom',\n 'pop-in',\n 'fade-in',\n 'zoom-out',\n 'zoom-fade-out',\n 'none'\n // #endif\n ]\r\n }\r\n },\r\n onLoad() {\r\n this.onLoadTime = Date.now()\r\n console.log('onLoad', this.onLoadTime)\r\n },\r\n onShow() {\r\n this.onShowTime = Date.now()\r\n console.log('onShow', this.onShowTime)\r\n },\r\n onReady() {\r\n this.onReadyTime = Date.now()\r\n console.log('onReady', this.onReadyTime)\r\n },\r\n onHide() {\r\n this.onHideTime = Date.now()\r\n console.log('onHide', this.onHideTime)\r\n },\r\n onBackPress(options : OnBackPressOptions) : boolean | null {\r\n console.log('onBackPress', Date.now())\r\n console.log('onBackPress from', options.from)\r\n return null\r\n },\r\n onUnload() {\r\n console.log('onUnload', Date.now())\r\n },\r\n methods: {\r\n reLaunch() {\r\n uni.reLaunch({\r\n url: '/pages/tabBar/component',\r\n success(result) {\r\n console.log('reLaunch success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('reLaunch fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('reLaunch complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n navigateTo() {\r\n uni.navigateTo({\r\n url: '/pages/API/navigator/new-page/new-page-1?data=Hello',\n success(result) {\r\n console.log('navigateTo success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('navigateTo fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('navigateTo complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\n navigateToAnimationType(animationType: string) {\r\n uni.navigateTo({\r\n url: '/pages/API/navigator/new-page/new-page-1?data=Hello',\n animationType: animationType,\r\n success(result) {\r\n console.log('navigateTo success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('navigateTo fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('navigateTo complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n navigateToErrorPage() {\r\n uni.navigateTo({\r\n url: '/pages/error-page/error-page',\r\n success(result) {\r\n console.log('navigateTo success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n fail(error) {\r\n console.log('navigateTo fail', error.errMsg)\r\n uni.showToast({\r\n title: error.errMsg,\r\n icon: 'none',\r\n })\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n complete(result) {\r\n console.log('navigateTo complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n navigateToDebounce() {\r\n uni.navigateTo({\r\n url: '/pages/API/navigator/new-page/new-page-1?data=debounce',\r\n success(result) {\r\n console.log('navigateTo success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('navigateTo fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('navigateTo complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n uni.navigateTo({\r\n url: '/pages/API/navigator/new-page/new-page-1?data=debounce',\r\n success(result) {\r\n console.log('navigateTo success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n fail(error) {\r\n console.log('navigateTo fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n complete(result) {\r\n console.log('navigateTo complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n // 自动化测试\r\n navigateToRelativePath1() {\r\n uni.navigateTo({\r\n url: 'new-page/new-page-1?data=new-page/new-page-1',\r\n success() {\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail() {\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete() {\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n // 自动化测试\r\n navigateToRelativePath2() {\r\n uni.navigateTo({\r\n url: './new-page/new-page-1?data=./new-page/new-page-1',\r\n success() {\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail() {\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete() {\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n // 自动化测试\r\n navigateToRelativePath3() {\r\n uni.navigateTo({\r\n url: '../navigator/new-page/new-page-1?data=../navigator/new-page/new-page-1',\r\n success() {\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail() {\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete() {\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n navigateBack() {\r\n uni.navigateBack({\r\n success(result) {\r\n console.log('navigateBack success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('navigateBack fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('navigateBack complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n navigateBackWithDelta1() {\r\n uni.navigateTo({\r\n url: '/pages/API/navigator/new-page/new-page-1',\r\n success() {\r\n uni.navigateBack({\r\n delta: 1,\r\n success(result) {\r\n console.log('navigateBack success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('navigateBack fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('navigateBack complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n })\r\n },\r\n navigateBackWithDelta100() {\r\n uni.navigateTo({\r\n url: '/pages/API/navigator/new-page/new-page-1',\r\n success() {\r\n uni.navigateBack({\r\n delta: 100,\r\n success(result) {\r\n console.log('navigateBack success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('navigateBack fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('navigateBack complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n })\r\n },\r\n redirectTo() {\r\n uni.redirectTo({\r\n url: '/pages/API/navigator/new-page/new-page-1?data=Hello',\r\n success(result) {\r\n console.log('redirectTo success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('redirectTo fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('redirectTo complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n switchTab() {\r\n uni.switchTab({\r\n url: '/pages/tabBar/template',\r\n success(result) {\r\n console.log('switchTab success', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail(error) {\r\n console.log('switchTab fail', error.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete(result) {\r\n console.log('switchTab complete', result.errMsg)\r\n // 自动化测试\r\n setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n })\r\n },\r\n // 自动化测试\r\n getLifeCycleNum() : number {\r\n return state.lifeCycleNum\r\n },\r\n // 自动化测试\r\n setLifeCycleNum(num : number) {\r\n setLifeCycleNum(num)\r\n },\r\n },\r\n }\r\n\n```\n:::"},"setNavigationBarColor":{"name":"## uni.setNavigationBarColor(options) @setnavigationbarcolor","description":"设置导航条、状态栏颜色
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SetNavigationBarColorOptions](#setnavigationbarcoloroptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| frontColor | \"#ffffff\" \\| \"#000000\" | 是 | - | | 前景颜色值,包括按钮、标题、状态栏的颜色,仅支持 #ffffff 和 #000000 |\n@| backgroundColor | [string.ColorString](/uts/data-type.md#ide-string) | 是 | - | | 背景颜色值,有效值为十六进制颜色 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (error: [SetNavigationBarColorFail](#setnavigationbarcolorfail-values)) => void | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (res: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetNavigationBarColorFail 的属性值 @setnavigationbarcolorfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### setNavigationBarColor 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [setNavigationBarColor](https://doc.dcloud.net.cn/uni-app-x/api/set-navigation-bar-color.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.setNavigationBarColor)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/set-navigation-bar-color/set-navigation-bar-color.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/set-navigation-bar-color/set-navigation-bar-color\n>Template\n```vue\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { state, setLifeCycleNum } from '@/store/index.uts'\r\n\r\n export default {\r\n methods: {\r\n setNavigationBarColor1() {\r\n uni.setNavigationBarColor({\r\n frontColor: '#ffffff',\r\n backgroundColor: '#00ff00',\r\n success: () => {\r\n console.log('setNavigationBarColor success')\r\n this.setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail: () => {\r\n console.log('setNavigationBarColor fail')\r\n this.setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete: () => {\r\n console.log('setNavigationBarColor complete')\r\n this.setLifeCycleNum(state.lifeCycleNum + 1)\r\n }\r\n })\r\n },\r\n setNavigationBarColor2() {\r\n uni.setNavigationBarColor({\r\n frontColor: '#000000',\r\n backgroundColor: '#ff0000',\r\n success: () => {\r\n console.log('setNavigationBarColor success')\r\n this.setLifeCycleNum(state.lifeCycleNum + 1)\r\n },\r\n fail: () => {\r\n console.log('setNavigationBarColor fail')\r\n this.setLifeCycleNum(state.lifeCycleNum - 1)\r\n },\r\n complete: () => {\r\n console.log('setNavigationBarColor complete')\r\n this.setLifeCycleNum(state.lifeCycleNum + 1)\r\n }\r\n })\r\n },\r\n // 自动化测试\r\n getLifeCycleNum() : number {\r\n return state.lifeCycleNum\r\n },\r\n // 自动化测试\r\n setLifeCycleNum(num : number) {\r\n setLifeCycleNum(num)\r\n },\r\n goNavbarLite() {\r\n uni.navigateTo({\r\n url: '/pages/template/navbar-lite/navbar-lite'\r\n })\r\n }\r\n },\r\n }\r\n\n```\n:::"},"setNavigationBarTitle":{"name":"## uni.setNavigationBarTitle(options) @setnavigationbartitle","description":"动态设置当前页面的标题
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SetNavigationBarTitleOptions](#setnavigationbartitleoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| title | string | 是 | - | | 页面标题 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (error: [SetNavigationBarTitleFail](#setnavigationbartitlefail-values)) => void | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (res: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetNavigationBarTitleFail 的属性值 @setnavigationbartitlefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### setNavigationBarTitle 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.97 | 4.11 |\n","tutorial":"\n### 参见\n- [setNavigationBarTitle](https://doc.dcloud.net.cn/uni-app-x/api/set-navigation-bar-title.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.setNavigationBarTitle)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/set-navigation-bar-title/set-navigation-bar-title.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/set-navigation-bar-title/set-navigation-bar-title\n>Template\n```vue\n\n\n\n\n```\n>Script\n```uts\n\n import { state, setLifeCycleNum } from '@/store/index.uts'\n\n export default {\n data() {\n return {\n newTitle: 'new title',\n longTitle: 'long title long title long title long title long title long title long title long title long title long title'\n }\n },\n methods: {\n setNavigationBarNewTitle() {\n uni.setNavigationBarTitle({\n title: this.newTitle,\n success: () => {\n console.log('setNavigationBarTitle success')\n this.setLifeCycleNum(state.lifeCycleNum + 1)\n },\n fail: () => {\n console.log('setNavigationBarTitle fail')\n this.setLifeCycleNum(state.lifeCycleNum - 1)\n },\n complete: () => {\n console.log('setNavigationBarTitle complete')\n this.setLifeCycleNum(state.lifeCycleNum + 1)\n }\n })\n },\n setNavigationBarLongTitle() {\n uni.setNavigationBarTitle({\n title: this.longTitle,\n success() {\n console.log('setNavigationBarTitle success')\n },\n fail() {\n console.log('setNavigationBarTitle fail')\n },\n complete() {\n console.log('setNavigationBarTitle complete')\n }\n })\n },\n // 自动化测试\n getLifeCycleNum() : number {\n return state.lifeCycleNum\n },\n // 自动化测试\n setLifeCycleNum(num : number) {\n setLifeCycleNum(num)\n }\n },\n }\n\n```\n:::"},"showTabBar":{"name":"## uni.showTabBar(options?) @showtabbar","description":"显示 tabBar
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ShowTabBarOptions](#showtabbaroptions-values) \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| animation | boolean | 否 | - | - | 是否需要动画效果 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### showTabBar 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [showTabBar](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#showtabbar)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.setTabBar.showTabBar)\n"},"hideTabBar":{"name":"## uni.hideTabBar(options?) @hidetabbar","description":"隐藏 tabBar
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [HideTabBarOptions](#hidetabbaroptions-values) \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| animation | boolean | 否 | - | - | 是否需要动画效果 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### hideTabBar 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [hideTabBar](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#hidetabbar)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.setTabBar.hideTabBar)\n"},"showTabBarRedDot":{"name":"## uni.showTabBarRedDot(options) @showtabbarreddot","description":"显示 tabBar 某一项的右上角的红点
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ShowTabBarRedDotOptions](#showtabbarreddotoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| index | number | 是 | - | - | tabBar的哪一项,从左边算起,索引从0开始 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### showTabBarRedDot 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [showTabBarRedDot](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#showtabbarreddot)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.setTabBar.showTabBarRedDot)\n"},"hideTabBarRedDot":{"name":"## uni.hideTabBarRedDot(options) @hidetabbarreddot","description":"隐藏 tabBar 某一项的右上角的红点
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [HideTabBarRedDotOptions](#hidetabbarreddotoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| index | number | 是 | - | - | tabBar的哪一项,从左边算起,索引从0开始 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### hideTabBarRedDot 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [hideTabBarRedDot](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#hidetabbarreddot)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.setTabBar.hideTabBarRedDot)\n"},"setTabBarBadge":{"name":"## uni.setTabBarBadge(options) @settabbarbadge","description":"为 tabBar 某一项的右上角添加文本
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SetTabBarBadgeOptions](#settabbarbadgeoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| index | number | 是 | - | - | tabBar的哪一项,从左边算起,索引从0开始 |\n@| text | string | 是 | - | - | 显示的文本,不超过 3 个半角字符 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### setTabBarBadge 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [setTabBarBadge](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#settabbarbadge)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.setTabBar.setTabBarBadge)\n"},"removeTabBarBadge":{"name":"## uni.removeTabBarBadge(options) @removetabbarbadge","description":"移除 tabBar 某一项右上角的文本
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [RemoveTabBarBadgeOptions](#removetabbarbadgeoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| index | number | 是 | - | - | tabBar的哪一项,从左边算起,索引从0开始 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### removeTabBarBadge 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [removeTabBarBadge](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#removetabbarbadge)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.setTabBar.removeTabBarBadge)\n"},"setTabBarStyle":{"name":"## uni.setTabBarStyle(options) @settabbarstyle","description":"动态设置 tabBar 的整体样式
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SetTabBarStyleOptions](#settabbarstyleoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| color | string ([string.ColorString](/uts/data-type.md#ide-string)) | 否 | - | - | tab 上的文字默认颜色 |\n@| selectedColor | string ([string.ColorString](/uts/data-type.md#ide-string)) | 否 | - | - | tab 上的文字选中时的颜色 |\n@| backgroundColor | string ([string.ColorString](/uts/data-type.md#ide-string)) | 否 | - | - | tab 的背景色 |\n@| backgroundImage | string | 否 | - | - | 图片背景 |\n@| backgroundRepeat | \"repeat\" \\| \"repeat-x\" \\| \"repeat-y\" \\| \"no-repeat\" | 否 | - | - | 背景图平铺方式
- repeat: 背景图片在垂直方向和水平方向平铺
- repeat-x: 背景图片在水平方向平铺,垂直方向拉伸
- repeat-y: 背景图片在垂直方向平铺,水平方向拉伸
- no-repeat: 背景图片在垂直方向和水平方向都拉伸 |\n@| borderColor | string ([string.ColorString](/uts/data-type.md#ide-string)) | 否 | - | | tabbar上边框的颜色(优先级高于 borderStyle) |\n@| borderStyle | \"black\" \\| \"white\" | 否 | - | - | tabbar上边框的颜色 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### setTabBarStyle 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [setTabBarStyle](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#settabbarstyle)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.setTabBar.setTabBarStyle)\n"},"setTabBarItem":{"name":"## uni.setTabBarItem(options) @settabbaritem","description":"动态设置 tabBar 某一项的内容
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SetTabBarItemOptions](#settabbaritemoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| index | number | 是 | - | - | tabBar 的哪一项,从左边算起,索引从0开始 |\n@| text | string | 否 | - | - | tab 上按钮文字 |\n@| iconPath | string | 否 | - | - | 图片路径 |\n@| selectedIconPath | string | 否 | - | - | 选中时的图片路径 |\n@| pagePath | string | 否 | - | - | 页面绝对路径 |\n@| iconfont | **SetTabBarItemIconFontOptions** | 否 | - | - | 字体图标,优先级高于 iconPath |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| text | string | 是 | - | - | 字库 Unicode 码 |\n@@| selectedText | string | 是 | - | - | 选中后字库 Unicode 码 |\n@@| fontSize | string | 否 | - | - | 字体图标字号(px) |\n@@| color | string | 否 | - | - | 字体图标颜色 |\n@@| selectedColor | string | 否 | - | - | 字体图标选中颜色 |\n@| visible | boolean | 否 | - | - | tab 是否显示 |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [SetTabBarFail](#settabbarfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetTabBarFail 的属性值 @settabbarfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 100 \\| 200 | 是 | - | - | 错误码
- 100: TabBar 不存在
- 200: 参数错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### setTabBarItem 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [setTabBarItem](https://doc.dcloud.net.cn/uni-app-x/api/set-tabbar.html#settabbaritem)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.setTabBar.setTabBarItem)\n"},"startPullDownRefresh":{"name":"## uni.startPullDownRefresh(options?) @startpulldownrefresh","description":"开始下拉刷新
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [StartPullDownRefreshOptions](#startpulldownrefreshoptions-values) \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [StartPullDownRefreshFail](#startpulldownrefreshfail-values)) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### StartPullDownRefreshFail 的属性值 @startpulldownrefreshfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | 下拉刷新错误码
- 4: 框架内部异常 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### startPullDownRefresh 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/uni-app-x/api/pull-down-refresh.html#startpulldownrefresh)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.pullDownRefresh.startPullDownRefresh)\n"},"stopPullDownRefresh":{"name":"## uni.stopPullDownRefresh() @stoppulldownrefresh","description":"停止当前页面下拉刷新
","param":"","returnValue":"","compatibility":"### stopPullDownRefresh 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [stopPullDownRefresh](https://doc.dcloud.net.cn/uni-app-x/api/pull-down-refresh.html#stoppulldownrefresh)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.pullDownRefresh.stopPullDownRefresh)\n"},"pullDownRefresh":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/pull-down-refresh/pull-down-refresh.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/pull-down-refresh/pull-down-refresh\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n export default {\r\n data() {\r\n return {\r\n data: [] as Array,\r\n loadMoreText: \"加载中...\",\r\n showLoadMore: false,\r\n max: 0,\n pulldownRefreshTriggered: false\r\n }\r\n },\r\n onReady() {\r\n uni.startPullDownRefresh();\r\n this.initData();\r\n },\r\n onReachBottom() {\r\n console.log(\"onReachBottom\");\r\n if (this.max > 40) {\r\n this.loadMoreText = \"没有更多数据了!\"\r\n return;\r\n }\r\n this.showLoadMore = true;\r\n setTimeout(() => {\r\n this.setListData();\r\n }, 300);\r\n },\r\n onPullDownRefresh() {\r\n console.log('onPullDownRefresh');\n this.pulldownRefreshTriggered = true\r\n this.initData();\r\n },\r\n methods: {\r\n initData() {\r\n setTimeout(() => {\r\n this.max = 0;\r\n this.data = [];\r\n let data : Array = [];\r\n this.max += 20;\r\n for (let i : number = this.max - 19; i < this.max + 1; i++) {\r\n data.push(i)\r\n }\r\n this.data = this.data.concat(data);\r\n uni.stopPullDownRefresh();\r\n }, 1000);\r\n },\r\n setListData() {\r\n let data : Array = [];\r\n this.max += 10;\r\n for (let i : number = this.max - 9; i < this.max + 1; i++) {\r\n data.push(i)\r\n }\r\n this.data = this.data.concat(data);\r\n }\r\n }\r\n }\r\n\n```\n:::"},"pageScrollTo":{"name":"## uni.pageScrollTo(options) @pagescrollto","description":"将页面滚动到目标位置
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [PageScrollToOptions](#pagescrolltooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| scrollTop | number \\| null | 否 | - | - | 滚动到页面的目标位置 |\n@| selector | string \\| null | 否 | - | - | 选择器 |\n@| offsetTop | number \\| null | 否 | - | | 偏移距离,可以滚动到 selector 加偏移距离的位置 |\n@| duration | number \\| null | 否 | - | - | 滚动动画的时长 |\n@| success | (result: AsyncApiSuccessResult) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [PageScrollToFail](#pagescrolltofail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: [AsyncApiResult](#asyncapiresult-values)) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### PageScrollToFail 的属性值 @pagescrolltofail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### pageScrollTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [pageScrollTo](https://doc.dcloud.net.cn/uni-app-x/api/page-scroll-to.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.pageScrollTo)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/page-scroll-to/page-scroll-to.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/page-scroll-to/page-scroll-to\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'pageScrollTo',\n }\n },\n methods: {\n scrollTo() {\n uni.pageScrollTo({\n scrollTop: 100,\n duration: 300,\n success: () => {\n console.log('success')\n },\n })\n },\n scrollToElement() {\n uni.pageScrollTo({\n selector: '.custom-element',\n duration: 300,\n success: () => {\n console.log('success')\n },\n })\n },\n },\n }\n\n```\n:::"},"onTabBarMidButtonTap":{"name":"## uni.onTabBarMidButtonTap(options) @ontabbarmidbuttontap","description":"监听中间按钮的点击事件
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | () => void | 是 | - | - | - | \n","returnValue":"","compatibility":"### onTabBarMidButtonTap 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [onTabBarMidButtonTap](https://doc.dcloud.net.cn/uni-app-x/api/on-tab-bar-mid-button-tap.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.page.onTabBarMidButtonTap)\n"},"getElementById":{"name":"## uni.getElementById(id) @getelementbyid","description":"返回一个匹配特定 ID 的元素, 如果不存在,返回 null。\\
如果需要获取指定的节点类型,需要使用 as 进行类型转换。\\
ID 区分大小写,且应该是唯一的。如果存在多个匹配的元素,则返回第一个匹配的元素。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| id | [string.IDString](/uts/data-type.md#ide-string) \\| string | 是 | - | - | - | \n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [UniElement](/dom/unielement.md) \\| null | 否 |\n \n","compatibility":"### getElementById 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [getElementById](https://doc.dcloud.net.cn/uni-app-x/api/get-element.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.getElementById)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-element-by-id/get-element-by-id.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-element-by-id/get-element-by-id\n>Template\n```vue\n\r\n\r\n\r\n\n```\n>Script\n```uts\n\r\n export default {\r\n data() {\r\n return {\r\n checked: false,\r\n homePagePath: '/pages/tabBar/component',\r\n launchOptionsPath: '',\r\n }\r\n },\n methods: {\r\n getElementByNotExistId() : Element | null {\r\n return uni.getElementById('not-exist-id')\r\n },\r\n changePageHeadBackgroundColor() {\r\n const pageHead = uni.getElementById('page-head')!\r\n pageHead.style.setProperty('background-color', 'red')\r\n },\r\n changeTextColor() {\r\n const text = uni.getElementById('text')!\r\n text.style.setProperty('color', 'red')\r\n },\r\n changeViewStyle() {\r\n const view = uni.getElementById('view')\r\n if (view !== null) {\r\n view.style.setProperty('width', '90%')\r\n view.style.setProperty('height', '50px')\r\n view.style.setProperty('background-color', '#007AFF')\r\n }\r\n },\r\n goMultipleRootNode() {\r\n uni.navigateTo({ url: '/pages/API/get-element-by-id/get-element-by-id-multiple-root-node' })\r\n },\n //自动化测试获取text元素的offsetLeft属性值\n getTextOffsetLeft(): number {\n const text = uni.getElementById('text')!\n return text.offsetLeft\n }\r\n }\r\n }\r\n\n```\n:::"},"createSelectorQuery":{"name":"## uni.createSelectorQuery() @createselectorquery","description":"返回一个SelectorQuery对象实例
","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n\n#### SelectorQuery 的方法 @selectorquery-values \n\n#### in(component?) @in\n将选择器的选取范围更改为自定义组件component内\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| component | any \\| null | 否 | - | - | | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n \n\n##### in 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### select(selector) @select\n在当前页面下选择第一个匹配选择器selector的节点\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| selector | string | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [NodesRef](#nodesref-values) |\n\n##### NodesRef 的方法 @nodesref-values \n\n##### boundingClientRect(callback?) @boundingclientrect\n添加节点的布局位置的查询请求,相对于显示区域,以像素为单位\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void \\| null | 否 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n \n\n###### boundingClientRect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### scrollOffset(callback) @scrolloffset\n添加节点的滚动位置查询请求,以像素为单位\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n \n\n###### scrollOffset 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### fields(fields, callback) @fields\n获取节点的相关信息,需要获取的字段在fields中指定\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| fields | **NodeField** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| id | boolean \\| null | 否 | - | - | 是否返回节点 id |\n@| dataset | boolean \\| null | 否 | - | - | 是否返回节点 dataset |\n@| rect | boolean \\| null | 否 | - | - | 是否返回节点布局位置(left right top bottom) |\n@| size | boolean \\| null | 否 | - | - | 是否返回节点尺寸(width height) |\n@| scrollOffset | boolean \\| null | 否 | - | - | 是否返回节点的 scrollLeft scrollTop,节点必须是 scroll-view 或者 viewport |\n@| properties | Array\\ \\| null | 否 | - | - | 指定属性名列表,返回节点对应属性名的当前属性值(只能获得组件文档中标注的常规属性值,id class style 和事件绑定的属性值不可获取) |\n@| computedStyle | Array\\ \\| null | 否 | - | - | 指定样式名列表,返回节点对应样式名的当前值 |\n@| context | boolean \\| null | 否 | - | | 是否返回节点对应的 Context 对象 |\n| callback | (result: any) => void | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n \n\n###### fields 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### context(callback) @context\n添加节点的 Context 对象查询请求\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n \n\n###### context 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n\n\n##### node(callback) @node\n获取 Node 节点实例。目前支持 Canvas 的获取。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [SelectorQuery](#selectorquery-values) |\n \n\n###### node 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n\n##### select 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### selectAll(selector) @selectall\n在当前页面下选择匹配选择器selector的所有节点\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| selector | string | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [NodesRef](#nodesref-values) |\n \n\n##### selectAll 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### selectViewport() @selectviewport\n选择显示区域\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [NodesRef](#nodesref-values) |\n \n\n##### selectViewport 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### exec(callback) @exec\n执行所有的请求\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: Array\\) => void \\| null | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [NodesRef](#nodesref-values) \\| null | 否 |\n \n\n##### exec 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### createSelectorQuery 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.91 | 4.11 |\n","tutorial":"\n### 参见\n- [createSelectorQuery](https://doc.dcloud.net.cn/uni-app-x/api/nodes-info.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.createSelectorQuery)\n"},"showActionSheet":{"name":"## uni.showActionSheet(options) @showactionsheet","description":"从底部向上弹出操作菜单","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ShowActionSheetOptions](#showactionsheetoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| title | string \\| null | 否 | - | - | 菜单标题 |\n@| alertText | string \\| null | 否 | - | - | 警示文案(同菜单标题, app无效) |\n@| itemList | Array\\ | 是 | - | - | 按钮的文字数组 |\n@| itemColor | [string.ColorString](/uts/data-type.md#ide-string) \\| null | 否 | - | - | 按钮的文字颜色,字符串格式(iOS默认为系统控件颜色) |\n@| popover | **Popover** \\| null | 否 | - | - | 大屏设备弹出原生选择按钮框的指示区域,默认居中显示 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| top | number | 是 | - | - | 指示区域坐标,使用原生 navigationBar 时一般需要加上 navigationBar 的高度 |\n@@| left | number | 是 | - | - | 指示区域坐标 |\n@@| width | number | 是 | - | - | 指示区域宽度 |\n@@| height | number | 是 | - | - | 指示区域高度 |\n@| success | (res: [ShowActionSheetSuccess](#showactionsheetsuccess-values)) => void \\| null | 否 | - | - | uni.showActionSheet成功回调函数定义 |\n@| fail | (res: [IPromptError](#iprompterror-values)) => void \\| null | 否 | - | - | uni.showActionSheet成功回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.showActionSheet成功回调函数定义 | \n\n##### ShowActionSheetSuccess 的属性值 @showactionsheetsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tapIndex | number \\| null | 否 | - | - | 用户点击的按钮,从上到下的顺序,从0开始 |\n\n##### IPromptError 的属性值 @iprompterror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1 \\| 1001 | 是 | - | - | 错误码
- 1\t 撤销
- 1001 请求参数非法 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### showActionSheet 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/ui/prompt.html#showactionsheet)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.showActionSheet)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/action-sheet/action-sheet.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/action-sheet/action-sheet\n>Template\n```vue\n\r\n\n\n```\n>Script\n```uts\n\r\n type ItemType = {\r\n value : string,\r\n name : string,\r\n }\r\n export default {\r\n data() {\r\n return {\r\n title: 'action-sheet',\r\n itemColorCustom: false,\r\n itemContentLarge: false,\r\n itemNumLargeSelect: false,\n showErrorToast:true,\r\n items: [{\r\n value: '标题',\r\n name: '有标题'\r\n },\r\n {\r\n value: '',\r\n name: '无标题'\r\n },\r\n {\r\n value: '超长标题测试内容,测试超过显示最大范围之后的样式-超长标题测试内容,测试超过显示最大范围之后的样式',\r\n name: '超长标题'\r\n }\r\n ] as ItemType[],\r\n current: 0,\r\n }\r\n },\n onLoad(){\n uni.showActionSheet({\n title: \"onLoad 调用示例,请手动取消\",\n itemList:['item1', 'item2'],\n })\n },\r\n methods: {\n //自动化测试例专用\n jest_getWindowInfo() : GetWindowInfoResult {\n return uni.getWindowInfo();\n },\r\n radioChange(e : UniRadioGroupChangeEvent) {\r\n for (let i = 0; i < this.items.length; i++) {\r\n if (this.items[i].value === e.detail.value) {\r\n this.current = i;\r\n break;\r\n }\r\n }\r\n },\r\n itemContentLargeChange: function (e : UniSwitchChangeEvent) {\r\n this.itemContentLarge = e.detail.value\r\n },\r\n itemColorChange: function (e : UniSwitchChangeEvent) {\r\n this.itemColorCustom = e.detail.value\r\n },\r\n itemNumLargeChange: function (e : UniSwitchChangeEvent) {\r\n this.itemNumLargeSelect = e.detail.value\r\n },\r\n actionSheetTap() {\r\n\r\n let itemInfo = ['item1', 'item2', 'item3', 'item4']\r\n\r\n if (this.itemContentLarge) {\r\n itemInfo = ['两个黄鹂鸣翠柳,一行白鹭上青天。窗含西岭千秋雪,门泊东吴万里船', '水光潋滟晴方好,山色空蒙雨亦奇。 欲把西湖比西子,淡妆浓抹总相宜', '']\r\n }\n\n if (this.itemNumLargeSelect) {\r\n // 大量选项测试,不能超过6个元素 https://uniapp.dcloud.net.cn/api/ui/prompt.html#showactionsheet\r\n itemInfo = []\n for (var i = 1; i <= 10; i++) {\r\n itemInfo.push('两个黄鹂鸣翠柳,一行白鹭上青天');\r\n }\r\n }\r\n\r\n const that = this\r\n if (this.itemColorCustom) {\r\n uni.showActionSheet({\r\n title: this.items[this.current].value,\r\n itemList: itemInfo,\r\n itemColor: \"#ff00ff\",\r\n success: (e) => {\r\n console.log(e.tapIndex);\r\n uni.showToast({\r\n title: \"点击了第\" + e.tapIndex + \"个选项\",\r\n icon: \"none\"\r\n })\r\n },\r\n fail: (e) => {\n if(this.showErrorToast){\n uni.showToast({\n title: e.errMsg,\n icon: \"none\"\n })\n }\r\n console.log(e);\r\n }\r\n })\r\n } else {\r\n uni.showActionSheet({\r\n title: this.items[this.current].value,\r\n itemList: itemInfo,\r\n success: (e) => {\r\n console.log(e.tapIndex);\r\n uni.showToast({\r\n title: \"点击了第\" + e.tapIndex + \"个选项\",\r\n icon: \"none\"\r\n })\r\n },\r\n fail: (e) => {\r\n console.log(e);\n if(this.showErrorToast){\n uni.showToast({\n title: e.errMsg,\n icon: \"none\"\n })\n }\n }\r\n })\r\n }\r\n },\r\n }\r\n }\r\n\n```\n:::"},"showModal":{"name":"## uni.showModal(options) @showmodal","description":"显示模态弹窗,可以只有一个确定按钮,也可以同时有确定和取消按钮。类似于一个API整合了 html 中:alert、confirm。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ShowModalOptions](#showmodaloptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| title | string \\| null | 否 | - | - | 提示的标题 |\n@| content | string \\| null | 否 | - | - | 提示的内容 |\n@| showCancel | boolean \\| null | 否 | true
是否显示取消按钮,默认为 true | - | |\n@| cancelText | string \\| null | 否 | - | - | 取消按钮的文字,默认为\"取消\" |\n@| cancelColor | [string.ColorString](/uts/data-type.md#ide-string) \\| null | 否 | - | - | 取消按钮的文字颜色,默认为\"#000000\" |\n@| confirmText | string \\| null | 否 | - | - | 确定按钮的文字,默认为\"确定\" |\n@| confirmColor | [string.ColorString](/uts/data-type.md#ide-string) \\| null | 否 | - | - | 确定按钮的文字颜色 |\n@| editable | boolean \\| null | 否 | false
是否显示输入框 | - | |\n@| placeholderText | string \\| null | 否 | - | - | 显示输入框时的提示文本 |\n@| success | (res: [ShowModalSuccess](#showmodalsuccess-values)) => void \\| null | 否 | - | - | uni.showModal成功回调函数定义 |\n@| fail | (res: [IPromptError](#iprompterror-values)) => void \\| null | 否 | - | - | uni.showModal失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.showModal完成回调函数定义 | \n\n##### ShowModalSuccess 的属性值 @showmodalsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| confirm | boolean | 是 | - | - | 为 true 时,表示用户点击了确定按钮 |\n| cancel | boolean | 是 | - | - | 为 true 时,表示用户点击了取消(用于 Android 系统区分点击蒙层关闭还是点击取消按钮关闭) |\n| content | string \\| null | 否 | - | - | editable 为 true 时,用户输入的文本 |\n\n##### IPromptError 的属性值 @iprompterror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1 \\| 1001 | 是 | - | - | 错误码
- 1\t 撤销
- 1001 请求参数非法 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### showModal 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/ui/prompt.html#showmodal)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.showModal)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/modal/modal.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/modal/modal\n>Template\n```vue\n\n\n\n\n```\n>Script\n```uts\n\n type ItemType = {\n value : string,\n name : string,\n }\n export default {\n data() {\n return {\n title: 'modal',\n showCancelSelect: false,\n cancelTextSelect: false,\n confirmTextSelect: false,\n editableSelect: false,\n placeholderTextSelect: false,\n exeRet: \"\",\n items: [{\n value: '标题',\n name: '有标题'\n },\n {\n value: '',\n name: '无标题'\n },\n {\n value: '超长标题测试内容,测试超过显示最大范围之后的样式-超长标题测试内容,测试超过显示最大范围之后的样式',\n name: '超长标题'\n }\n ] as ItemType[],\n current: 0\n }\n },\n onLoad() {\n uni.showModal({\n title: \"onLoad 调用示例,请手动取消\",\n showCancel: false\n })\n },\n methods: {\n //自动化测试例专用\n jest_getWindowInfo() : GetWindowInfoResult {\n return uni.getWindowInfo();\n },\n showCancelChange: function (e : UniSwitchChangeEvent) {\n this.showCancelSelect = e.detail.value\n },\n cancelTextChange: function (e : UniSwitchChangeEvent) {\n this.cancelTextSelect = e.detail.value\n },\n confirmTextChange: function (e : UniSwitchChangeEvent) {\n this.confirmTextSelect = e.detail.value\n },\n editableChange: function (e : UniSwitchChangeEvent) {\n this.editableSelect = e.detail.value\n },\n placeholderTextChange: function (e : UniSwitchChangeEvent) {\n this.placeholderTextSelect = e.detail.value\n },\n radioChange(e : UniRadioGroupChangeEvent) {\n for (let i = 0; i < this.items.length; i++) {\n if (this.items[i].value === e.detail.value) {\n this.current = i;\n break;\n }\n }\n },\n modalTap: function () {\n let cancelTextVal : string\n let cancelColorVal = ''\n if (this.cancelTextSelect) {\n cancelTextVal = \"修改后的取消文本\"\n cancelColorVal = \"#ff00ff\"\n } else {\n cancelTextVal = \"取消\"\n }\n\n let confirmTextVal = '确定'\n let confirmColorVal = ''\n if (this.confirmTextSelect) {\n confirmTextVal = \"修改后的确定文本\"\n confirmColorVal = \"#00ffff\"\n }\n\n let placeholderTextVal = ''\n let contentVal = \"弹窗内容,告知当前状态、信息和解决方法,描述文字尽量控制在三行内\"\n if (this.placeholderTextSelect) {\n placeholderTextVal = \"定制提示信息\"\n contentVal = \"\"\n }\n uni.showModal({\n title: this.items[this.current].value,\n editable: this.editableSelect,\n placeholderText: placeholderTextVal,\n content: contentVal,\n showCancel: this.showCancelSelect,\n cancelText: cancelTextVal,\n cancelColor: cancelColorVal,\n confirmText: confirmTextVal,\n confirmColor: confirmColorVal,\n success: (res) => {\n this.exeRet = JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = JSON.stringify(res)\n }\n })\n }\n }\n }\n\n```\n:::"},"showLoading":{"name":"## uni.showLoading(options) @showloading","description":"显示 loading 提示框, 需主动调用 uni.hideLoading 才能关闭提示框。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ShowLoadingOptions](#showloadingoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| title | string | 是 | - | - | 提示的内容,长度与 icon 取值有关。 |\n@| mask | boolean \\| null | 否 | - | - | 是否显示透明蒙层,防止触摸穿透,默认:false |\n@| success | (res: ShowLoadingSuccess) => void \\| null | 否 | - | - | uni.showLoading成功回调函数定义 |\n@| fail | (res: [IPromptError](#iprompterror-values)) => void \\| null | 否 | - | - | uni.showLoading失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.showLoading完成回调函数定义 | \n\n##### IPromptError 的属性值 @iprompterror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1 \\| 1001 | 是 | - | - | 错误码
- 1\t 撤销
- 1001 请求参数非法 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### showLoading 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/ui/prompt.html#showloading)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.showLoading.showLoading)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/loading/loading.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/loading/loading\n>Template\n```vue\n\n\n\n```\n>Script\n```uts\n\n type ItemType = {\n value : string\n name : string\n }\n export default {\n data() {\n return {\n title: 'loading',\n items: [\n {\n value: 'null',\n name: '无标题',\n },\n {\n value: '三秒后自动关闭',\n name: '普通标题',\n },\n {\n value: '超长文本内容,测试超出范围-超长文本内容,测试超出范围-三秒后自动关闭',\n name: '长标题',\n },\n ] as ItemType[],\n current: 0,\n maskSelect: false,\n titleSelect: \"null\"\n }\n },\n onLoad(){\n uni.showLoading({\n \ttitle:'onLoad 调用示例,2秒后消失'\n })\n setTimeout(function() {\n uni.hideLoading()\n }, 2000);\n },\n methods: {\n //自动化测试例专用\n jest_getWindowInfo() : GetWindowInfoResult {\n return uni.getWindowInfo();\n },\n\n radioChange(e : UniRadioGroupChangeEvent) {\n const selected = this.items.find((item) : boolean => {\n return item.value == e.detail.value\n })\n if (selected != null) {\n this.titleSelect = selected.value\n }\n },\n maskChange: function (e : UniSwitchChangeEvent) {\n this.maskSelect = e.detail.value\n },\n showLoading: function () {\n\n console.log(this.titleSelect)\n if (this.titleSelect == \"null\") {\n uni.showLoading({\n title: \"\",\n mask: this.maskSelect\n });\n } else {\n uni.showLoading({\n title: this.titleSelect,\n mask: this.maskSelect\n });\n }\n setTimeout(() => {\n this.hideLoading();\n }, 3000);\n },\n hideLoading: function () {\n uni.hideLoading();\n }\n }\n }\n\n```\n:::"},"hideLoading":{"name":"## uni.hideLoading() @hideloading","description":"隐藏 loading 提示框。","param":"","returnValue":"","compatibility":"### hideLoading 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/ui/prompt.html#hideloading)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.showLoading.hideLoading)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/loading/loading.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/loading/loading\n>Template\n```vue\n\n\n\n```\n>Script\n```uts\n\n type ItemType = {\n value : string\n name : string\n }\n export default {\n data() {\n return {\n title: 'loading',\n items: [\n {\n value: 'null',\n name: '无标题',\n },\n {\n value: '三秒后自动关闭',\n name: '普通标题',\n },\n {\n value: '超长文本内容,测试超出范围-超长文本内容,测试超出范围-三秒后自动关闭',\n name: '长标题',\n },\n ] as ItemType[],\n current: 0,\n maskSelect: false,\n titleSelect: \"null\"\n }\n },\n onLoad(){\n uni.showLoading({\n \ttitle:'onLoad 调用示例,2秒后消失'\n })\n setTimeout(function() {\n uni.hideLoading()\n }, 2000);\n },\n methods: {\n //自动化测试例专用\n jest_getWindowInfo() : GetWindowInfoResult {\n return uni.getWindowInfo();\n },\n\n radioChange(e : UniRadioGroupChangeEvent) {\n const selected = this.items.find((item) : boolean => {\n return item.value == e.detail.value\n })\n if (selected != null) {\n this.titleSelect = selected.value\n }\n },\n maskChange: function (e : UniSwitchChangeEvent) {\n this.maskSelect = e.detail.value\n },\n showLoading: function () {\n\n console.log(this.titleSelect)\n if (this.titleSelect == \"null\") {\n uni.showLoading({\n title: \"\",\n mask: this.maskSelect\n });\n } else {\n uni.showLoading({\n title: this.titleSelect,\n mask: this.maskSelect\n });\n }\n setTimeout(() => {\n this.hideLoading();\n }, 3000);\n },\n hideLoading: function () {\n uni.hideLoading();\n }\n }\n }\n\n```\n:::"},"showToast":{"name":"## uni.showToast(options) @showtoast","description":"显示消息提示框","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ShowToastOptions](#showtoastoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| title | string | 是 | - | - | 提示的内容,长度与 icon 取值有关。 |\n@| icon | \"success\" \\| \"error\" \\| \"fail\" \\| \"exception\" \\| \"loading\" \\| \"none\" | 否 | - | - | icon值说明 success: 显示成功图标,error: 显示错误图标; fail: 显示错误图标,此时title文本无长度显示; exception: 显示异常图标,此时title文本无长度显示; loading: 显示加载图标;none: 不显示图标。 |\n@| image | [string.ImageURIString](/uts/data-type.md#ide-string) \\| null | 否 | - | - | 自定义图标的本地路径(app端暂不支持gif) |\n@| mask | boolean \\| null | 否 | - | - | 是否显示透明蒙层,防止触摸穿透,默认:false |\n@| duration | number \\| null | 否 | - | - | 提示的延迟时间,单位毫秒,默认:1500 |\n@| position | \"top\" \\| \"center\" \\| \"bottom\" | 否 | - | - | position值说明(仅App生效) top: 居上显示; center: 居中显示;bottom: 居底显示 |\n@| success | (res: ShowToastSuccess) => void \\| null | 否 | - | - | uni.showToast成功回调函数定义 |\n@| fail | (res: [IPromptError](#iprompterror-values)) => void \\| null | 否 | - | - | uni.showToast失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.showToast完成回调函数定义 | \n\n##### IPromptError 的属性值 @iprompterror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1 \\| 1001 | 是 | - | - | 错误码
- 1\t 撤销
- 1001 请求参数非法 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### showToast 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/ui/prompt.html#showtoast)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.showToast.showToast)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/toast/toast.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/toast/toast\n>Template\n```vue\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'toast',\n exeRet: ''\n }\n },\n onLoad() {\n uni.showToast({\n title: 'onLoad 调用示例,2秒后消失'\n })\n setTimeout(function () {\n uni.hideToast()\n }, 2000);\n },\n methods: {\n //自动化测试例专用\n jest_getWindowInfo() : GetWindowInfoResult {\n return uni.getWindowInfo();\n },\n toast1Tap: function () {\n uni.showToast({\n title: \"默认\",\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toastTapIconError: function () {\n uni.showToast({\n title: \"默认\",\n icon: 'error',\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toast2Tap: function () {\n uni.showToast({\n title: \"duration 3000\",\n duration: 3000,\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toast3Tap: function () {\n uni.showToast({\n title: \"loading\",\n icon: \"loading\",\n duration: 5000,\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toast4Tap: function () {\n uni.showToast({\n title: \"logo\",\n image: \"/static/uni.png\",\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n // #ifdef APP\n toast5Tap: function () {\n uni.showToast({\n title: \"显示一段轻提示\",\n position: 'bottom',\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n // #endif\n hideToast: function () {\n uni.hideToast()\n }\n }\n }\n\n```\n:::"},"hideToast":{"name":"## uni.hideToast() @hidetoast","description":"隐藏消息提示框。","param":"","returnValue":"","compatibility":"### hideToast 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/ui/prompt.html#hidetoast)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.showToast.hideToast)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/toast/toast.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/toast/toast\n>Template\n```vue\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'toast',\n exeRet: ''\n }\n },\n onLoad() {\n uni.showToast({\n title: 'onLoad 调用示例,2秒后消失'\n })\n setTimeout(function () {\n uni.hideToast()\n }, 2000);\n },\n methods: {\n //自动化测试例专用\n jest_getWindowInfo() : GetWindowInfoResult {\n return uni.getWindowInfo();\n },\n toast1Tap: function () {\n uni.showToast({\n title: \"默认\",\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toastTapIconError: function () {\n uni.showToast({\n title: \"默认\",\n icon: 'error',\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toast2Tap: function () {\n uni.showToast({\n title: \"duration 3000\",\n duration: 3000,\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toast3Tap: function () {\n uni.showToast({\n title: \"loading\",\n icon: \"loading\",\n duration: 5000,\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n toast4Tap: function () {\n uni.showToast({\n title: \"logo\",\n image: \"/static/uni.png\",\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n // #ifdef APP\n toast5Tap: function () {\n uni.showToast({\n title: \"显示一段轻提示\",\n position: 'bottom',\n success: (res) => {\n this.exeRet = \"success:\" + JSON.stringify(res)\n },\n fail: (res) => {\n this.exeRet = \"fail:\" + JSON.stringify(res)\n },\n })\n },\n // #endif\n hideToast: function () {\n uni.hideToast()\n }\n }\n }\n\n```\n:::"},"loadFontFace":{"name":"## uni.loadFontFace(options) @loadfontface","description":"动态加载网络字体
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [LoadFontFaceOptions](#loadfontfaceoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| global | boolean | 否 | - | | 是否全局生效。微信小程序 '2.10.0'起支持全局生效,需在 app.vue 中调用。 |\n@| family | string | 是 | - | | 定义的字体名称 |\n@| source | string | 是 | - | | 字体资源的地址, App-Android 平台不支持 woff、woff2 格式字体文件 |\n@| desc | **LoadFontFaceOptionDesc** | 否 | - | | 可选的字体描述符 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| style | string \\| null | 否 | - | - | |\n@@| weight | string \\| null | 否 | - | - | |\n@@| variant | string \\| null | 否 | - | - | |\n@| success | (result: AsyncApiSuccessResult) => void | 否 | - | | 接口调用成功的回调函数 |\n@| fail | (error: [LoadFontFaceFail](#loadfontfacefail-values)) => void | 否 | - | | 接口调用失败的回调函数 |\n@| complete | (res: [AsyncApiResult](#asyncapiresult-values)) => void | 否 | - | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### LoadFontFaceFail 的属性值 @loadfontfacefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 4 \\| 99 \\| 101 \\| 100001 \\| 100002 \\| 200001 \\| 300001 \\| 300002 | 是 | - | - | 错误码
- 4: 框架内部异常
- 99: page is not ready
- 101: 参数错误
- 100001: family is null
- 100002: source is null
- 200001: local font not found
- 300001: same source task is loading
- 300002: download fail |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n##### AsyncApiResult 的属性值 @asyncapiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Promise \\| null | 否 |\n \n","compatibility":"### loadFontFace 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.10 |\n","tutorial":"\n### 参见\n- [loadFontFace](https://doc.dcloud.net.cn/uni-app-x/api/load-font-face.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.loadFontFace)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/load-font-face/load-font-face.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/load-font-face/load-font-face\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n uniIcon1: '\\ue100',\n uniIcon2: '\\ue101',\n }\n },\n onLoad() {\n uni.loadFontFace({\n global: true,\n family: 'UniFontFamily',\n source: \"url('/static/font/uni.ttf')\",\n success() {\n console.log('global loadFontFace uni.ttf success')\n },\n fail(error) {\n console.warn('global loadFontFace uni.ttf fail', error.errMsg)\n },\n })\n uni.loadFontFace({\n family: 'AlimamaDaoLiTiTTF',\n source:\n \"url('https://qiniu-web-assets.dcloud.net.cn/uni-app-x/static/font/AlimamaDaoLiTi.ttf')\",\n success() {\n console.log('loadFontFace Remote AlimamaDaoLiTi.ttf success')\n },\n fail(error) {\n console.warn('loadFontFace Remote AlimamaDaoLiTi.ttf fail', error.errMsg)\n },\n })\n uni.loadFontFace({\n family: 'AlimamaDaoLiTiOTF',\n source: \"url('/static/font/AlimamaDaoLiTi.otf')\",\n success() {\n console.log('loadFontFace AlimamaDaoLiTi.otf success')\n },\n fail(error) {\n console.warn('loadFontFace AlimamaDaoLiTi.otf fail', error.errMsg)\n },\n })\n uni.loadFontFace({\n family: 'AlimamaDaoLiTiWOFF',\n source: \"url('/static/font/AlimamaDaoLiTi.woff')\",\n success() {\n console.log('loadFontFace AlimamaDaoLiTi.woff success')\n },\n fail(error) {\n console.warn('loadFontFace AlimamaDaoLiTi.woff fail', error.errMsg)\n },\n })\n uni.loadFontFace({\n family: 'AlimamaDaoLiTiWOFF2',\n source: \"url('/static/font/AlimamaDaoLiTi.woff2')\",\n success() {\n console.log('loadFontFace AlimamaDaoLiTi.woff2 success')\n },\n fail(error) {\n console.warn('loadFontFace AlimamaDaoLiTi.woff2 fail', error.errMsg)\n },\n })\n },\n methods: {\n navigateToChild() {\n uni.navigateTo({\n url: '/pages/API/load-font-face/load-font-face-child',\n })\n },\n },\n }\n\n```\n:::"},"rpx2px":{"name":"## uni.rpx2px(number) @rpx2px","description":"将rpx单位值转换成px","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| number | number | 是 | - | - | | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| number |\n \n","compatibility":"### rpx2px 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.02 | 4.02 | 4.11 |\n","tutorial":"\n### 参见\n- [rpx2px](https://doc.dcloud.net.cn/uni-app-x/api/rpx2px.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.rpx2px)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/rpx2px/rpx2px.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/rpx2px/rpx2px\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'rpx2px',\n rpxValue: 750,\n pxValue: 0,\n result: false\n }\n },\n methods: {\n rpx2px: function () {\n this.pxValue = uni.rpx2px(this.rpxValue);\n\n // 仅限自动化测试\n const windowInfo = uni.getWindowInfo();\n if (windowInfo.windowWidth == this.pxValue) {\n this.result = true\n }\n }\n }\n }\n\n```\n:::"},"setAppTheme":{"name":"## uni.setAppTheme(options) @setapptheme","description":"设置应用主题","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SetAppThemeOptions](#setappthemeoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| theme | \"light\" \\| \"dark\" \\| \"auto\" | 是 | - | | 主题 |\n@| success | (result: [SetAppThemeSuccessResult](#setappthemesuccessresult-values)) => void | 否 | null | | 接口调用成功的回调函数 |\n@| fail | (result: [IAppThemeFail](#iappthemefail-values)) => void | 否 | null | | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | null | | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SetAppThemeSuccessResult 的属性值 @setappthemesuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| theme | string | 是 | - | - | - |\n\n##### IAppThemeFail 的属性值 @iappthemefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 702001 \\| 2002000 | 是 | - | | 错误码
- 702001 参数错误
- 2002000 未知错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### setAppTheme 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.themeChange.setAppTheme)\n"},"onOsThemeChange":{"name":"## uni.onOsThemeChange(callback) @onosthemechange","description":"开启监听系统主题变化","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (res: [OsThemeChangeResult](#osthemechangeresult-values)) => void | 是 | - | - | | \n\n#### OsThemeChangeResult 的属性值 @osthemechangeresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| osTheme | string | 是 | - | | 系统主题 |\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| number |\n \n","compatibility":"### onOsThemeChange 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.themeChange.onOsThemeChange)\n"},"offOsThemeChange":{"name":"## uni.offOsThemeChange(id) @offosthemechange","description":"取消监听系统主题变化","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| id | number | 是 | - | - | | \n","returnValue":"","compatibility":"### offOsThemeChange 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.themeChange.offOsThemeChange)\n"},"onAppThemeChange":{"name":"## uni.onAppThemeChange(callback) @onappthemechange","description":"开启监听应用主题变化","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (res: [AppThemeChangeResult](#appthemechangeresult-values)) => void | 是 | - | - | | \n\n#### AppThemeChangeResult 的属性值 @appthemechangeresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| appTheme | string | 是 | - | | 应用主题 |\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| number |\n \n","compatibility":"### onAppThemeChange 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.themeChange.onAppThemeChange)\n"},"offAppThemeChange":{"name":"## uni.offAppThemeChange(id) @offappthemechange","description":"取消监听应用主题变化","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| id | number | 是 | - | - | | \n","returnValue":"","compatibility":"### offAppThemeChange 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.themeChange.offAppThemeChange)\n"},"themeChange":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/theme-change/theme-change.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"getLocale":{"name":"## uni.getLocale() @getlocale","description":"获取当前设置的语言
","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n","compatibility":"### getLocale 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/api/ui/locale.html#getlocale)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.locale.getLocale)\n"},"setLocale":{"name":"## uni.setLocale(locale) @setlocale","description":"设置当前语言
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| locale | string | 是 | - | - | - | \n","returnValue":"","compatibility":"### setLocale 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/api/ui/locale.html#setlocale)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.locale.setLocale)\n"},"onLocaleChange":{"name":"## uni.onLocaleChange(callback) @onlocalechange","description":"设置当前语言
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnLocaleChangeCallbackResult](#onlocalechangecallbackresult-values)) => void | 是 | - | - | - | \n\n#### OnLocaleChangeCallbackResult 的属性值 @onlocalechangecallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| locale | string \\| null | 否 | - | - | 当前语言 |\n","returnValue":"","compatibility":"### onLocaleChange 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/api/ui/locale.html#onlocalechange)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ui.locale.onLocaleChange)\n"},"request":{"name":"## uni.request(param) @request","description":"发起网络请求。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| param | [RequestOptions\\](#requestoptions-values) | 是 | - | - | 网络请求参数 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string | 是 | - | | 开发者服务器接口地址
|\n@| data | any \\| null | 否 | null | | 请求的参数 UTSJSONObject\\|string类型 |\n@| header | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) \\| null | 否 | null | | 设置请求的 header,header 中不能设置 Referer |\n@| method | \"GET\" \\| \"POST\" \\| \"PUT\" \\| \"PATCH\" \\| \"DELETE\" \\| \"HEAD\" \\| \"OPTIONS\" | 否 | \"GET\" | | 请求方法
- GET GET方法请求一个指定资源的表示形式,使用 GET 的请求应该只被用于获取数据。
- POST POST方法用于将实体提交到指定的资源,通常导致在服务器上的状态变化或副作用。
- PUT PUT方法用有效载荷请求替换目标资源的所有当前表示。
- PATCH PATCH方法用于对资源应用部分修改。
- DELETE DELETE方法删除指定的资源。
- HEAD HEAD方法请求一个与GET请求的响应相同的响应,但没有响应体。
- OPTIONS OPTIONS 方法用于描述目标资源的通信选项。 |\n@| timeout | number \\| null | 否 | 60000 | | 超时时间,单位 ms |\n@| withCredentials | boolean \\| null | 否 | - | | 跨域请求时是否携带凭证(cookies)
|\n@| success | (option: [RequestSuccess\\](#requestsuccess-values)) => void \\| null | 否 | null | - | 网络请求成功回调。 |\n@| fail | (option: [RequestFail](#requestfail-values)) => void \\| null | 否 | null | - | 网络请求失败回调。 |\n@| complete | (option: any) => void \\| null | 否 | null | - | 网络请求完成回调,成功或者失败都会调用。 | \n\n##### RequestSuccess\\ 的属性值 @requestsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | T \\| null | 否 | - | | 开发者服务器返回的数据 |\n| statusCode | number | 是 | - | | 开发者服务器返回的 HTTP 状态码 |\n| header | any | 是 | - | | 开发者服务器返回的 HTTP Response Header |\n| cookies | Array\\ | 是 | - | | 开发者服务器返回的 cookies,格式为字符串数组 |\n\n##### RequestFail 的属性值 @requestfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 5 \\| 1000 \\| 100001 \\| 100002 \\| 600003 \\| 600009 \\| 602001 | 是 | - | - | 错误码
- 5 接口超时
- 1000 服务端系统错误
- 100001 json数据解析错误
- 100002 错误信息json解析失败
- 600003 网络中断
- 600009 URL格式不合法
- 602001 request系统错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [RequestTask](#requesttask-values) |\n\n#### RequestTask 的方法 @requesttask-values \n\n#### abort() @abort\n中断网络请求。\n\n\n##### abort 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/request.html#request)\n \n","compatibility":"### request 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/request.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.request)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/request/request.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/request/request\n>Template\n```vue\n\r\n\r\n\n```\n>Script\n```uts\n\n // #ifdef APP\n import {\n testInovkeRequest,\n CommonOptions\n } from '@/uni_modules/test-invoke-network-api'\n // #endif\n\n class GETDataType {\n data: UTSJSONObject | null = null\n }\n\r\n const duration = 2000\r\n const methodMap = {\r\n \"GET\": \"/api/http/method/get\",\r\n \"POST\": \"/api/http/method/post\",\r\n \"PUT\": \"/api/http/method/put\",\r\n \"DELETE\": \"/api/http/method/delete\",\r\n \"PATCH\": \"/api/http/method/patch\",\r\n \"OPTIONS\": \"/api/http/method/options\",\r\n \"HEAD\": \"/api/http/method/head\"\r\n }\r\n\r\n\r\n export default {\r\n data() {\r\n return {\r\n title: 'request',\r\n res: '',\r\n task: null as RequestTask | null,\r\n host: \"https://request.dcloud.net.cn\",\r\n url: \"/api/http/method/get\",\r\n method: \"GET\" as RequestMethod | null,\r\n data: null as any | null,\r\n header: null as UTSJSONObject | null,\r\n errorCodeUrls: [\r\n \"/api/http/statusCode/200\",\r\n \"/api/http/statusCode/204\",\r\n \"/api/http/statusCode/301\",\r\n \"/api/http/statusCode/302\",\r\n \"/api/http/statusCode/307\",\r\n \"/api/http/statusCode/400\",\r\n \"/api/http/statusCode/401\",\r\n \"/api/http/statusCode/403\",\r\n \"/api/http/statusCode/404\",\r\n \"/api/http/statusCode/405\",\r\n \"/api/http/statusCode/500\",\r\n \"/api/http/statusCode/502\",\r\n \"/api/http/statusCode/503\",\r\n \"/api/http/statusCode/504\",\r\n ],\r\n headerUrls: [\r\n \"/api/http/header/ua\",\r\n \"/api/http/header/referer\",\r\n \"/api/http/header/requestCookie\",\r\n \"/api/http/header/setCookie\",\r\n \"/api/http/header/deleteCookie\"\r\n ],\r\n contentTypeUrls: [\r\n \"/api/http/contentType/text/plain\",\r\n \"/api/http/contentType/text/html\",\r\n \"/api/http/contentType/text/xml\",\r\n \"/api/http/contentType/image/gif\",\r\n \"/api/http/contentType/image/jpeg\",\r\n \"/api/http/contentType/image/png\",\r\n \"/api/http/contentType/application/json\",\r\n \"/api/http/contentType/application/octetStream\",\r\n ],\r\n postUrls: [\r\n \"/api/http/contentType/json\",\r\n \"/api/http/contentType/xWwwFormUrlencoded\",\r\n ],\r\n //自动化测试例专用\r\n jest_result: false,\n jest_result_data: \"\"\r\n }\r\n },\r\n onLoad() {\r\n },\r\n onUnload() {\r\n uni.hideLoading();\r\n this.task?.abort();\r\n },\r\n methods: {\r\n changeMethod(e : RequestMethod) {\r\n this.method = e;\r\n this.url = methodMap[e] as string;\r\n this.data = null;\r\n this.header = null;\r\n },\r\n changeUrl(e : string) {\r\n this.method = \"GET\";\r\n this.url = e;\r\n this.data = null;\r\n this.header = null;\r\n },\r\n changeUrlFromPost(e : string) {\r\n this.method = \"POST\";\r\n this.url = e;\r\n switch (e) {\r\n case \"/api/http/contentType/json\":\r\n this.header = {\r\n \"Content-Type\": \"application/json\"\r\n };\r\n this.data = {\r\n \"hello\": \"world\"\r\n };\r\n break;\r\n case \"/api/http/contentType/xWwwFormUrlencoded\":\r\n this.header = {\r\n \"Content-Type\": \"application/x-www-form-urlencoded\"\r\n };\r\n this.data = \"hello=world\";\r\n break;\r\n }\r\n },\r\n sendRequest() {\r\n uni.showLoading({\r\n title: \"请求中...\"\r\n })\r\n this.task = uni.request({\r\n url: this.host + this.url,\r\n // dataType: \"json\",\r\n // responseType: \"json\",\r\n method: this.method,\r\n data: this.data,\r\n header: this.header,\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: (res) => {\r\n console.log('request success', JSON.stringify(res.data))\r\n console.log('request success header is :', JSON.stringify(res.header))\r\n uni.showToast({\r\n title: '请求成功',\r\n icon: 'success',\r\n mask: true,\r\n duration: duration\r\n });\r\n this.res = '请求结果 : ' + JSON.stringify(res);\r\n },\r\n fail: (err) => {\r\n console.log('request fail', err);\r\n uni.showModal({\r\n content: err.errMsg,\r\n showCancel: false\r\n });\r\n },\r\n complete: () => {\r\n uni.hideLoading()\r\n },\r\n });\r\n },\r\n //自动化测试例专用\r\n jest_request() {\r\n uni.request({\r\n url: this.host + this.url,\r\n // dataType: \"json\",\r\n // responseType: \"json\",\r\n method: this.method,\r\n data: this.data,\r\n header: this.header,\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\r\n this.jest_result = true;\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\r\n jest_set_cookie() {\r\n uni.request({\r\n url: this.host + \"/api/http/header/setCookie\",\r\n method: \"GET\",\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\r\n this.jest_cookie_request(true)\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\n jest_set_cookie_expires(){\n uni.request({\n url: this.host + \"/api/http/header/setCookie?expires=5\",\n method: \"GET\",\n timeout: 6000,\n sslVerify: false,\n withCredentials: false,\n firstIpv4: false,\n success: () => {\n this.jest_cookie_request(true)\n },\n fail: () => {\n this.jest_result = false;\n },\n });\n },\r\n jest_delete_cookie() {\r\n uni.request({\r\n url: this.host + \"/api/http/header/deleteCookie\",\r\n method: \"GET\",\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\r\n this.jest_cookie_request(false)\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\r\n jest_cookie_request(needCookie : boolean) {\r\n uni.request({\r\n url: this.host + \"/api/http/header/requestCookie\",\r\n method: \"GET\",\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: (res) => {\n const requestCookie = (res.data as UTSJSONObject).getJSON(\"data\")?.getAny(\"requestCookie\")\r\n console.log(\"requestCookie \", requestCookie);\n this.jest_result_data = JSON.stringify(requestCookie)\r\n if (requestCookie instanceof Array) {\r\n this.jest_result = needCookie ? requestCookie.length > 0 : requestCookie.length == 0\r\n } else {\r\n this.jest_result = needCookie ? (requestCookie as UTSJSONObject).toMap().size > 0 : (requestCookie as UTSJSONObject).toMap().size == 0\r\n }\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\r\n jest_timeout_null() {\r\n uni.request({\r\n url: this.host + (methodMap['GET'] as string),\r\n method: \"GET\",\r\n timeout: null,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\n this.jest_result = true;\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\n jest_get_with_data() {\n uni.request({\n url: \"https://unidemo.dcloud.net.cn/api/banner/36kr\",\n method: \"GET\",\n data:{\n column: 'id,post_id,title,author_name,cover,published_at' //需要的字段名\n },\n timeout: 6000,\n sslVerify: false,\n withCredentials: false,\n firstIpv4: false,\n success: () => {\n this.jest_result = true;\n },\n fail: () => {\n this.jest_result = false;\n },\n });\n },\n jest_get_with_generics() {\n uni.request({\n url: this.host + (methodMap['GET'] as string),\n method: \"GET\",\n timeout: null,\n sslVerify: false,\n withCredentials: false,\n firstIpv4: false,\n success: (res: RequestSuccess) => {\n console.log(\"success :\", res.data?.data);\n this.jest_result = true;\n },\n fail: () => {\n this.jest_result = false;\n },\n });\n },\n jest_get_array() {\n uni.request({\n url: 'https://unidemo.dcloud.net.cn/api/news?column=title,author_name,cover,published_at',\n method: \"GET\",\n success: (res : RequestSuccess) => {\n console.log(res)\n if (res.statusCode == 200 && Array.isArray(res.data)) {\n this.jest_result = true\n } else {\n this.jest_result = false\n }\n },\n fail: () => {\n this.jest_result = false\n }\n });\n },\n jest_uts_module_invoked(){\n // #ifdef APP\n testInovkeRequest({\n success:(res: any)=>{\n console.log(\"success :\", res);\n this.jest_result = true\n },\n fail:(err: any)=>{\n console.log(\"fail :\", err);\n this.jest_result = false\n }\n } as CommonOptions)\n // #endif\n }\r\n }\r\n }\r\n\n```\n:::"},"uploadFile":{"name":"## uni.uploadFile(options) @uploadfile","description":"将本地资源上传到开发者服务器。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [UploadFileOptions](#uploadfileoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string | 是 | - | | 开发者服务器 url |\n@| filePath | string \\| null | 否 | null | | 要上传文件资源的路径, 支持uni.env |\n@| name | string \\| null | 否 | null | | 文件对应的 key , 开发者在服务器端通过这个 key 可以获取到文件二进制内容 |\n@| files | Array\\<**UploadFileOptionFiles**\\> \\| null | 否 | null | | 需要上传的文件列表。 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| name | string \\| null | 否 | \"file\" | | multipart 提交时,表单的项目名,默认为 file,如果 name 不填或填的值相同,可能导致服务端读取文件时只能读取到一个文件。 |\n@@| uri | string | 是 | - | | 要上传文件资源的路径 |\n@@| file | any \\| null | 否 | - | | 要上传的文件对象 |\n@| header | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) \\| null | 否 | null | | HTTP 请求 Header, header 中不能设置 Referer |\n@| formData | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) \\| null | 否 | null | | HTTP 请求中其他额外的 form data |\n@| timeout | number \\| null | 否 | 120000 | | 超时时间,单位 ms |\n@| success | (result: [UploadFileSuccess](#uploadfilesuccess-values)) => void \\| null | 否 | null | - | 成功返回的回调函数 |\n@| fail | (result: [UploadFileFail](#uploadfilefail-values)) => void \\| null | 否 | null | - | 失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 结束的回调函数(调用成功、失败都会执行) | \n\n##### UploadFileSuccess 的属性值 @uploadfilesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | string | 是 | - | | 开发者服务器返回的数据 |\n| statusCode | number | 是 | - | | 开发者服务器返回的 HTTP 状态码 |\n\n##### UploadFileFail 的属性值 @uploadfilefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 5 \\| 1000 \\| 100001 \\| 100002 \\| 600003 \\| 600009 \\| 602001 | 是 | - | - | 错误码
- 5 接口超时
- 1000 服务端系统错误
- 100001 json数据解析错误
- 100002 错误信息json解析失败
- 600003 网络中断
- 600009 URL格式不合法
- 602001 request系统错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [UploadTask](#uploadtask-values) |\n\n#### UploadTask 的方法 @uploadtask-values \n\n#### abort() @abort\n中断上传任务。\n\n\n##### abort 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/network-file.html#uploadfile)\n\n#### onProgressUpdate(callback) @onprogressupdate\n监听上传进度变化。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnProgressUpdateResult](#onprogressupdateresult-values)) => void | 是 | - | - | | \n\n##### OnProgressUpdateResult 的属性值 @onprogressupdateresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| progress | number | 是 | - | | 上传进度百分比 |\n| totalBytesSent | number | 是 | - | | 已经上传的数据长度,单位 Bytes |\n| totalBytesExpectedToSend | number | 是 | - | | 预期需要上传的数据总长度,单位 Bytes |\n\n\n##### onProgressUpdate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/network-file.html#uploadfile)\n \n","compatibility":"### uploadFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/network-file.html#uploadfile)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.uploadFile)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/upload-file/upload-file.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/upload-file/upload-file\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n // #ifdef APP\r\n import {\r\n testInovkeUploadFile,\r\n CommonOptions\r\n } from '@/uni_modules/test-invoke-network-api'\r\n // #endif\r\n\r\n export default {\r\n data() {\r\n return {\r\n title: 'uploadFile',\r\n imageSrc: '',\r\n task: null as UploadTask | null,\r\n //自动化测试例专用\r\n jest_result: false,\r\n }\r\n },\r\n onLoad() {\r\n },\r\n onUnload() {\r\n this.imageSrc = '';\r\n uni.hideLoading();\r\n this.task?.abort();\r\n },\r\n methods: {\r\n chooseImage: function () {\r\n uni.chooseImage({\r\n count: 1,\r\n sizeType: ['compressed'],\r\n sourceType: ['album'],\r\n success: (res) => {\r\n console.log('chooseImage success, temp path is', res.tempFilePaths[0])\r\n var imageSrc = res.tempFilePaths[0]\r\n uni.showLoading({\r\n title: '上传中'\r\n })\r\n this.task = uni.uploadFile({\r\n url: 'https://unidemo.dcloud.net.cn/upload', //仅为示例,非真实的接口地址\r\n filePath: imageSrc,\r\n name: 'file',\r\n formData: {\r\n 'user': 'test'\r\n },\r\n success: (res) => {\r\n console.log('uploadImage success, res is:', res)\r\n uni.hideLoading();\r\n uni.showToast({\r\n title: '上传成功',\r\n icon: 'success',\r\n duration: 1000\r\n })\r\n this.imageSrc = imageSrc\r\n },\r\n fail: (err) => {\r\n console.log('uploadImage fail', err);\r\n uni.hideLoading();\r\n uni.showModal({\r\n content: err.errMsg,\r\n showCancel: false\r\n });\r\n },\r\n });\r\n },\r\n fail: (err) => {\r\n console.log('chooseImage fail', err)\r\n }\r\n })\r\n },\r\n //自动化测试例专用\r\n jest_uploadFile() {\r\n const imageSrc = \"/static/uni.png\";\r\n this.task = uni.uploadFile({\r\n url: 'https://unidemo.dcloud.net.cn/upload', //仅为示例,非真实的接口地址\r\n filePath: imageSrc,\r\n name: 'file',\r\n formData: {\r\n 'user': 'test'\r\n },\r\n success: () => {\r\n this.jest_result = true;\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n })\r\n },\r\n jest_uploadFile_with_uni_env() {\n const filePath = `${uni.env.CACHE_PATH}/download/uni-app.png`\r\n uni.downloadFile({\r\n url: \"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni-app.png\",\r\n filePath: filePath,\r\n success: () => {\r\n uni.uploadFile({\n url: 'https://unidemo.dcloud.net.cn/upload', //仅为示例,非真实的接口地址\n filePath: filePath,\n name: 'file',\n success: () => {\n this.jest_result = true;\n },\n fail: () => {\n this.jest_result = false;\n },\n })\n },\r\n fail: () => {\r\n this.jest_result = false\r\n }\r\n });\r\n },\r\n jest_set_cookie() {\r\n uni.request({\r\n url: \"https://request.dcloud.net.cn/api/http/header/setCookie\",\r\n method: \"GET\",\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\r\n this.jest_cookie_upload(true)\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\r\n\r\n jest_delete_cookie() {\r\n uni.request({\r\n url: \"https://request.dcloud.net.cn/api/http/header/deleteCookie\",\r\n method: \"GET\",\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\r\n this.jest_cookie_upload(false)\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\r\n jest_cookie_upload(needCookie : boolean) {\r\n const imageSrc = \"/static/uni.png\";\r\n this.task = uni.uploadFile({\r\n url: 'https://request.dcloud.net.cn/api/http/header/upload',\r\n filePath: imageSrc,\r\n name: 'file',\r\n success: (res : UploadFileSuccess) => {\r\n const data = JSON.parseObject(res.data)\r\n const errCode = data?.getNumber(\"errCode\")\r\n if (errCode != null && errCode == 1000) {\r\n this.jest_result = needCookie ? false : true;\r\n } else {\r\n this.jest_result = needCookie ? true : false;\r\n }\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n })\r\n },\r\n jest_files_upload() {\r\n const imageSrc = \"/static/uni.png\";\r\n this.task = uni.uploadFile({\r\n url: 'https://unidemo.dcloud.net.cn/upload',\r\n files: [\r\n {\r\n name: \"file1\",\r\n uri: imageSrc\r\n } as UploadFileOptionFiles,\r\n {\r\n name: \"file2\",\r\n uri: imageSrc\r\n } as UploadFileOptionFiles\r\n ],\r\n success: (res : UploadFileSuccess) => {\r\n if (res.statusCode == 200) {\r\n this.jest_result = true;\r\n }\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n })\r\n },\r\n jest_uts_module_invoked() {\r\n // #ifdef APP\r\n testInovkeUploadFile({\r\n success: (res : any) => {\r\n console.log(\"success :\", res);\r\n this.jest_result = true\r\n },\r\n fail: (err : any) => {\r\n console.log(\"fail :\", err);\r\n this.jest_result = false\r\n }\r\n } as CommonOptions)\r\n // #endif\r\n }\r\n }\r\n }\r\n\n```\n:::"},"downloadFile":{"name":"## uni.downloadFile(options) @downloadfile","description":"下载文件资源到本地,客户端直接发起一个 HTTP GET 请求,返回文件的本地临时路径。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [DownloadFileOptions](#downloadfileoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string | 是 | - | | 下载资源的 url |\n@| header | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) \\| null | 否 | null | | HTTP 请求 Header,header 中不能设置 Referer |\n@| filePath | string \\| null | 否 | null | | 指定文件下载路径
支持相对路径与绝对路径,例:
`/imgs/pic.png`、`/storage/emulated/0/Android/data/io.dcloud.HBuilder/apps/HBuilder/temp/imgs/pic.png`
并且支持指定下载目录,例:
`/imgs/`
支持uni.env的平台兼容性:Android自3.9开始支持uni.env,iOS自4.13开始支持uni.env |\n@| timeout | number \\| null | 否 | 120000 | | 超时时间,单位 ms |\n@| success | (result: [DownloadFileSuccess](#downloadfilesuccess-values)) => void \\| null | 否 | null | - | 下载成功后以 tempFilePath 的形式传给页面,res = {tempFilePath: '文件的临时路径'} |\n@| fail | (result: [DownloadFileFail](#downloadfilefail-values)) => void \\| null | 否 | null | - | 失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 结束的回调函数(调用成功、失败都会执行) | \n\n##### DownloadFileSuccess 的属性值 @downloadfilesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tempFilePath | string | 是 | - | | 临时文件路径,下载后的文件会存储到一个临时文件 |\n| statusCode | number | 是 | - | | 开发者服务器返回的 HTTP 状态码 |\n\n##### DownloadFileFail 的属性值 @downloadfilefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 5 \\| 1000 \\| 100001 \\| 100002 \\| 600003 \\| 600009 \\| 602001 | 是 | - | - | 错误码
- 5 接口超时
- 1000 服务端系统错误
- 100001 json数据解析错误
- 100002 错误信息json解析失败
- 600003 网络中断
- 600009 URL格式不合法
- 602001 request系统错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [DownloadTask](#downloadtask-values) |\n\n#### DownloadTask 的方法 @downloadtask-values \n\n#### abort() @abort\n中断下载任务。\n\n\n##### abort 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/network-file.html#downloadfile)\n\n#### onProgressUpdate(callback) @onprogressupdate\n监听下载进度变化。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnProgressDownloadResult](#onprogressdownloadresult-values)) => void | 是 | - | - | | \n\n##### OnProgressDownloadResult 的属性值 @onprogressdownloadresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| progress | number | 是 | - | | 下载进度百分比 |\n| totalBytesWritten | number | 是 | - | | 已经下载的数据长度,单位 Bytes |\n| totalBytesExpectedToWrite | number | 是 | - | | 预期需要下载的数据总长度,单位 Bytes |\n\n\n##### onProgressUpdate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/network-file.html#downloadfile)\n \n","compatibility":"### downloadFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/network-file.html#downloadfile)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.downloadFile)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/download-file/download-file.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/download-file/download-file\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\n\n // #ifdef APP\n import {\n testInovkeDownloadFile,\n CommonOptions\n } from '@/uni_modules/test-invoke-network-api'\n // #endif\n\r\n export default {\r\n data() {\r\n return {\r\n title: 'downloadFile',\r\n imageSrc: '',\r\n task: null as DownloadTask | null,\r\n //自动化测试例专用\r\n jest_result: false\r\n }\r\n },\r\n onLoad() {\r\n },\r\n onUnload() {\r\n // this.imageSrc = '';\r\n uni.hideLoading();\r\n this.task?.abort();\r\n },\r\n methods: {\r\n downloadImage: function () {\r\n uni.showLoading({\r\n title: '下载中'\r\n })\r\n var self = this\r\n this.task = uni.downloadFile({\r\n url: \"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni-app.png\",\r\n success: (res) => {\r\n console.log('downloadFile success, res is', res.tempFilePath)\r\n self.imageSrc = res.tempFilePath;\r\n uni.hideLoading();\r\n },\r\n fail: (err) => {\r\n console.log('downloadFile fail, err is:', err)\r\n uni.hideLoading();\r\n }\r\n });\r\n this.task?.onProgressUpdate((update) => {\r\n console.log(\"progress : \", update.progress);\r\n })\r\n },\r\n //自动化测试例专用\r\n jest_downloadFile() {\r\n uni.downloadFile({\r\n url: \"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni-app.png\",\r\n success: () => {\r\n this.jest_result = true\r\n },\r\n fail: () => {\r\n this.jest_result = false\r\n }\r\n });\r\n },\n\n jest_downloadFile_with_uni_env() {\n uni.downloadFile({\n url: \"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni-app.png\",\n filePath: `${uni.env.CACHE_PATH}/a/b/`,\n success: () => {\n this.jest_result = true\n },\n fail: () => {\n this.jest_result = false\n }\n });\n },\n\n jest_set_cookie(){\n uni.request({\n url: \"https://request.dcloud.net.cn/api/http/header/setCookie\",\n method: \"GET\",\n timeout: 6000,\n sslVerify: false,\n withCredentials: true,\n firstIpv4: false,\n success: () => {\n this.jest_cookie_download(true)\n },\n fail: () => {\n this.jest_result = false;\n },\n });\n },\n\n jest_delete_cookie(){\n uni.request({\n url: \"https://request.dcloud.net.cn/api/http/header/deleteCookie\",\n method: \"GET\",\n timeout: 6000,\n sslVerify: false,\n withCredentials: true,\n firstIpv4: false,\n success: () => {\n this.jest_cookie_download(false)\n },\n fail: () => {\n this.jest_result = false;\n },\n });\n },\n jest_cookie_download(needCookie: boolean){\n uni.downloadFile({\n url: \"https://request.dcloud.net.cn/api/http/header/download\",\n success: () => {\n this.jest_result = needCookie ? true : false;\n },\n fail: () => {\n this.jest_result = needCookie ? false : true;\n }\n });\n },\n jest_uts_module_invoked(){\n // #ifdef APP\n testInovkeDownloadFile({\n success:(res: any)=>{\n console.log(\"success :\", res);\n this.jest_result = true\n },\n fail:(err: any)=>{\n console.log(\"fail :\", err);\n this.jest_result = false\n }\n } as CommonOptions)\n // #endif\n },\n jest_special_characters_download(){\n uni.downloadFile({\n url: \"https://web-ext-storage.dcloud.net.cn/hello-uni-app-x/1789834995055525889-你好%23你好.png\",\n success: (res: DownloadFileSuccess) => {\n this.jest_result = true;\n console.log(\"res :\", res);\n },\n fail: () => {\n this.jest_result = false;\n }\n });\n }\r\n }\r\n }\r\n\n```\n:::"},"getNetworkType":{"name":"## uni.getNetworkType(options) @getnetworktype","description":"获取网络类型","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetNetworkTypeOptions](#getnetworktypeoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: [GetNetworkTypeSuccess](#getnetworktypesuccess-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetNetworkTypeSuccess 的属性值 @getnetworktypesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| networkType | string | 是 | - | - | 网络类型 |\n","returnValue":"","compatibility":"### getNetworkType 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/system/network?id=getnetworktype)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.getNetworkType)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-network-type/get-network-type.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-network-type/get-network-type\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n export default {\r\n data() {\r\n return {\r\n title: 'getNetworkType',\r\n hasNetworkType: false,\r\n networkType: '',\r\n connectedWifi: '',\r\n //自动化测试例专用\r\n jest_result: false,\r\n }\r\n },\r\n onLoad() {\r\n },\r\n onUnload: function () {\r\n this.networkType = '';\r\n this.hasNetworkType = false;\r\n },\r\n methods: {\r\n getNetworkType: function () {\r\n uni.getNetworkType({\r\n success: (res) => {\r\n console.log(res)\r\n this.hasNetworkType = true;\r\n this.networkType = res.networkType\r\n },\r\n fail: () => {\r\n uni.showModal({\r\n content: '获取失败!',\r\n showCancel: false\r\n })\r\n }\r\n })\r\n },\r\n clear: function () {\r\n this.hasNetworkType = false;\r\n this.networkType = '';\r\n this.connectedWifi = '';\r\n },\r\n //自动化测试例专用\r\n jest_getNetworkType() {\r\n uni.getNetworkType({\r\n success: () => {\r\n this.jest_result = true;\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n }\r\n })\r\n }\r\n }\r\n }\r\n\n```\n:::"},"connectSocket":{"name":"## uni.connectSocket(options) @connectsocket","description":"创建一个 WebSocket 连接。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ConnectSocketOptions](#connectsocketoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string | 是 | - | | 开发者服务器接口地址 |\n@| header | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) \\| null | 否 | null | | 如果属性名存在,且类型为UTSJSONObject返回对应的结果,不存在返回null |\n@| protocols | Array\\ \\| null | 否 | null | | 子协议数组 |\n@| success | (result: [ConnectSocketSuccess](#connectsocketsuccess-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [ConnectSocketFail](#connectsocketfail-values)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ConnectSocketSuccess 的属性值 @connectsocketsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n\n##### ConnectSocketFail 的属性值 @connectsocketfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | 错误码
- 600009 URL格式不合法 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [SocketTask](#sockettask-values) |\n\n#### SocketTask 的方法 @sockettask-values \n\n#### send(options) @send\n通过 WebSocket 连接发送数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SendSocketMessageOptions](#sendsocketmessageoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| data | any | 是 | - | | 需要发送的内容 |\n@| success | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [SendSocketMessageFail](#sendsocketmessagefail-values)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SendSocketMessageFail 的属性值 @sendsocketmessagefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 10001 \\| 10002 \\| 602001 | 是 | - | - | 错误码
- 10001 发送数据超限,发送队列不能超过16M大小。
- 10002 websocket未连接
- 602001 websocket系统错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n\n##### send 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/socket-task.html#sockettask-send)\n\n#### close(options) @close\n关闭 WebSocket 连接\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **CloseSocketOptions** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| code | number \\| null | 否 | 1000 | | 一个数字值表示关闭连接的状态号,表示连接被关闭的原因。如果这个参数没有被指定,默认的取值是1000 (表示正常连接关闭) |\n@| reason | string \\| null | 否 | \"\" | | 一个可读的字符串,表示连接被关闭的原因。这个字符串必须是不长于123字节的UTF-8 文本(不是字符) |\n@| success | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### close 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/socket-task.html#sockettask-close)\n\n#### onOpen(callback) @onopen\n监听 WebSocket 连接打开事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | **OnSocketOpenCallbackResult** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| header | any | 是 | - | | 连接成功的 HTTP 响应 Header | \n\n\n##### onOpen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/socket-task.html#sockettask-onopen)\n\n#### onClose(callback) @onclose\n监听 WebSocket 连接关闭事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | | \n\n\n##### onClose 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/socket-task.html#sockettask-onclose)\n\n#### onError(callback) @onerror\n监听 WebSocket 错误\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void | 是 | - | - | | \n\n\n##### onError 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/socket-task.html#sockettask-onerror)\n\n#### onMessage(callback) @onmessage\n监听 WebSocket 接受到服务器的消息事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnSocketMessageCallbackResult](#onsocketmessagecallbackresult-values)) => void | 是 | - | - | | \n\n##### OnSocketMessageCallbackResult 的属性值 @onsocketmessagecallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | any | 是 | - | | 服务器返回的消息 |\n\n\n##### onMessage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n##### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/socket-task.html#sockettask-onmessage)\n \n","compatibility":"### connectSocket 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#connectsocket)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket.websocket.connectSocket)\n"},"onSocketOpen":{"name":"## uni.onSocketOpen(options) @onsocketopen","description":"监听WebSocket连接打开事件。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | (result: [OnSocketOpenCallbackResult](#onsocketopencallbackresult-values)) => void | 是 | - | - | | \n","returnValue":"","compatibility":"### onSocketOpen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#onsocketopen)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket.websocket.onSocketOpen)\n"},"onSocketError":{"name":"## uni.onSocketError(callback) @onsocketerror","description":"下载文件资源到本地,客户端直接发起一个 HTTP GET 请求,返回文件的本地临时路径。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnSocketErrorCallbackResult](#onsocketerrorcallbackresult-values)) => void | 是 | - | - | | \n\n#### OnSocketErrorCallbackResult 的属性值 @onsocketerrorcallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | 错误信息 |\n","returnValue":"","compatibility":"### onSocketError 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#onsocketerror)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket.websocket.onSocketError)\n"},"sendSocketMessage":{"name":"## uni.sendSocketMessage(options) @sendsocketmessage","description":"通过 WebSocket 连接发送数据,需要先 uni.connectSocket,并在 uni.onSocketOpen 回调之后才能发送。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SendSocketMessageOptions](#sendsocketmessageoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| data | any | 是 | - | | 需要发送的内容 |\n@| success | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [SendSocketMessageFail](#sendsocketmessagefail-values)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SendSocketMessageFail 的属性值 @sendsocketmessagefail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 10001 \\| 10002 \\| 602001 | 是 | - | - | 错误码
- 10001 发送数据超限,发送队列不能超过16M大小。
- 10002 websocket未连接
- 602001 websocket系统错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### sendSocketMessage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#sendsocketmessage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket.websocket.sendSocketMessage)\n"},"onSocketMessage":{"name":"## uni.onSocketMessage(callback) @onsocketmessage","description":"监听WebSocket接受到服务器的消息事件。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnSocketMessageCallbackResult](#onsocketmessagecallbackresult-values)) => void | 是 | - | - | | \n\n#### OnSocketMessageCallbackResult 的属性值 @onsocketmessagecallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | any | 是 | - | | 服务器返回的消息 |\n","returnValue":"","compatibility":"### onSocketMessage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#onsocketmessage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket.websocket.onSocketMessage)\n"},"closeSocket":{"name":"## uni.closeSocket(options) @closesocket","description":"关闭 WebSocket 连接。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **CloseSocketOptions** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| code | number \\| null | 否 | 1000 | | 一个数字值表示关闭连接的状态号,表示连接被关闭的原因。如果这个参数没有被指定,默认的取值是1000 (表示正常连接关闭) |\n@| reason | string \\| null | 否 | \"\" | | 一个可读的字符串,表示连接被关闭的原因。这个字符串必须是不长于123字节的UTF-8 文本(不是字符) |\n@| success | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: [GeneralCallbackResult](#generalcallbackresult-values)) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n","returnValue":"","compatibility":"### closeSocket 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#closesocket)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket.websocket.closeSocket)\n"},"onSocketClose":{"name":"## uni.onSocketClose(callback) @onsocketclose","description":"监听WebSocket关闭。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnSocketCloseCallbackResult](#onsocketclosecallbackresult-values)) => void | 是 | - | - | | \n\n#### OnSocketCloseCallbackResult 的属性值 @onsocketclosecallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| code | number | 是 | - | | 一个数字值表示关闭连接的状态号,表示连接被关闭的原因。 |\n| reason | string | 是 | - | | 一个可读的字符串,表示连接被关闭的原因。\t |\n","returnValue":"","compatibility":"### onSocketClose 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/request/websocket.html#onsocketclose)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.network.websocket.websocket.onSocketClose)\n"},"getSystemInfo":{"name":"## uni.getSystemInfo(options) @getsysteminfo","description":"异步获取系统信息","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetSystemInfoOptions](#getsysteminfooptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: [GetSystemInfoResult](#getsysteminforesult-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetSystemInfoResult 的属性值 @getsysteminforesult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| SDKVersion | string | 是 | - | | 客户端基础库版本
|\n| appId | string | 是 | - | | `manifest.json` 中应用appid。
|\n| appLanguage | string | 是 | - | | 应用设置的语言。
|\n| appName | string | 是 | - | | `manifest.json` 中应用名称。
|\n| appVersion | string | 是 | - | | `manifest.json` 中应用版本名称。
|\n| appVersionCode | string | 是 | - | | `manifest.json` 中应用版本名号。
|\n| ~~brand~~ | string | 是 | - | | 手机品牌。 **已废弃,仅为了向下兼容保留** |\n| browserName | string | 是 | - | | 浏览器名称。`App` 端是系统 webview 的名字,比如 wkwebview、chrome。小程序端为空
|\n| browserVersion | string | 是 | - | | 浏览器版本、webview 版本。
|\n| deviceId | string | 是 | - | | 设备 ID
|\n| deviceBrand | string | 是 | - | | 设备品牌。如:`apple`、`huawei`。
|\n| deviceModel | string | 是 | - | | 设备型号
|\n| deviceType | \"phone\" \\| \"pad\" \\| \"tv\" \\| \"watch\" \\| \"pc\" \\| \"undefined\" \\| \"car\" \\| \"vr\" \\| \"appliance\" | 是 | - | | 设备类型。
|\n| devicePixelRatio | number | 是 | - | | 设备像素比
|\n| deviceOrientation | \"portrait\" \\| \"landscape\" | 是 | - | | 设备方向。 |\n| ~~language~~ | string | 是 | - | | 程序设置的语言 **已废弃,仅为了向下兼容保留** |\n| ~~model~~ | string | 是 | - | | 手机型号 **已废弃,仅为了向下兼容保留** |\n| osName | \"ios\" \\| \"android\" \\| \"macos\" \\| \"windows\" \\| \"linux\" | 是 | - | | 系统名称\t
|\n| osVersion | string | 是 | - | | 操作系统版本。如 ios 版本,andriod 版本
|\n| osLanguage | string | 是 | - | | 操作系统语言
|\n| osTheme | \"light\" \\| \"dark\" | 否 | - | | 操作系统主题
|\n| ~~pixelRatio~~ | number | 是 | - | | 设备像素比 **已废弃,仅为了向下兼容保留** |\n| ~~platform~~ | \"ios\" \\| \"android\" \\| \"mac\" \\| \"windows\" \\| \"linux\" | 是 | - | | 客户端平台 **已废弃,仅为了向下兼容保留** |\n| screenWidth | number | 是 | - | | 屏幕宽度,单位为px
|\n| screenHeight | number | 是 | - | | 屏幕高度,单位为px
|\n| statusBarHeight | number | 是 | - | | 状态栏的高度,单位为px
|\n| ~~system~~ | string | 是 | - | | 操作系统版本 **已废弃,仅为了向下兼容保留** |\n| safeArea | **SafeArea** | 是 | - | | 在竖屏正方向下的安全区域
|\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| left | number | 是 | - | | 安全区域左上角横坐标,单位为px
|\n@| right | number | 是 | - | | 安全区域右下角横坐标,单位为px
|\n@| top | number | 是 | - | | 安全区域左上角纵坐标,单位为px
|\n@| bottom | number | 是 | - | | 安全区域右下角纵坐标,单位为px
|\n@| width | number | 是 | - | | 安全区域的宽度,单位为px
|\n@| height | number | 是 | - | | 安全区域的高度,单位为px
|\n| safeAreaInsets | **SafeAreaInsets** | 是 | - | | 在竖屏正方向下的安全区域插入位置
|\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| left | number | 是 | - | | 安全区域左侧插入位置(距离左边边界距离),单位为px
|\n@| right | number | 是 | - | | 安全区域右侧插入位置(距离右边边界距离),单位为px
|\n@| top | number | 是 | - | | 安全区顶部插入位置(距离顶部边界距离),单位为px
|\n@| bottom | number | 是 | - | | 安全区域底部插入位置(距离底部边界距离),单位为px
|\n| ua | string | 是 | - | | 用户标识。小程序端为空
|\n| ~~uniCompileVersion~~ | string | 是 | - | | uni 编译器版本。 **已废弃,仅为了向下兼容保留** |\n| uniCompilerVersion | string | 是 | - | | uni 编译器版本。
|\n| uniPlatform | \"app\" \\| \"web\" \\| \"mp-weixin\" \\| \"mp-alipay\" \\| \"mp-baidu\" \\| \"mp-toutiao\" \\| \"mp-lark\" \\| \"mp-qq\" \\| \"mp-kuaishou\" \\| \"mp-jd\" \\| \"mp-360\" \\| \"quickapp-webview\" \\| \"quickapp-webview-union\" \\| \"quickapp-webview-huawei\" | 是 | - | | uni-app 运行平台,与条件编译平台相同。
|\n| uniRuntimeVersion | string | 是 | - | | uni 运行时版本。
|\n| ~~uniCompileVersionCode~~ | number | 是 | - | | uni 编译器版本号。 **已废弃,仅为了向下兼容保留** |\n| uniCompilerVersionCode | number | 是 | - | | uni 编译器版本号。
|\n| uniRuntimeVersionCode | number | 是 | - | | uni 运行时版本号。
|\n| ~~version~~ | string | 是 | - | | 引擎版本号。 **已废弃,仅为了向下兼容保留** |\n| romName | string | 是 | - | | rom 名称。Android 部分机型获取不到值。iOS 恒为 `ios`
|\n| romVersion | string | 是 | - | | rom 版本号。Android 部分机型获取不到值。iOS 为操作系统版本号(同 `osVersion`)。
|\n| windowWidth | number | 是 | - | | 可使用窗口宽度,单位为px
|\n| windowHeight | number | 是 | - | | 可使用窗口高度,单位为px
|\n| windowTop | number | 是 | - | | 内容区域距离顶部的距离(同CSS变量 `--window-top`),单位为px
|\n| windowBottom | number | 是 | - | | 内容区域距离底部的距离(同CSS变量 `--window-bottom`),单位为px
|\n| osAndroidAPILevel | number \\| null | 否 | - | | Android 系统API库的版本。
|\n| appTheme | \"light\" \\| \"dark\" \\| \"auto\" | 否 | - | | 当前App的主题
|\n","returnValue":"","compatibility":"### getSystemInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/system/info?id=getsysteminfo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.getSystemInfo.getSystemInfo)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-system-info/get-system-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-system-info/get-system-info\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n type Item = {\r\n label : string,\r\n value : string,\r\n }\r\n export default {\r\n data() {\r\n return {\r\n title: 'getSystemInfo',\r\n items: [] as Item[],\r\n }\r\n },\r\n onUnload: function () {\r\n },\r\n methods: {\r\n getSystemInfo: function () {\r\n uni.getSystemInfo({\r\n success: (res) => {\r\n this.items = [] as Item[];\n const res_str = JSON.stringify(res);\n const res_obj = JSON.parseObject(res_str);\n const res_map = res_obj!.toMap();\n let keys = [] as string[]\n res_map.forEach((_, key) => {\n keys.push(key);\n });\n keys.sort().forEach( key => {\n const value = res[key];\n if(value != null){\n const item = {\n \tlabel: key,\n \tvalue: \"\" + ((typeof value == \"object\")? JSON.stringify(value) : value)\n } as Item;\n this.items.push(item);\n }\n });\r\n },\r\n })\r\n },\r\n getSystemInfoSync: function () {\r\n this.items = [] as Item[];\r\n const res = uni.getSystemInfoSync()\n const res_str = JSON.stringify(res);\n const res_obj = JSON.parseObject(res_str);\n const res_map = res_obj!.toMap();\n let keys = [] as string[]\n res_map.forEach((_, key) => {\n keys.push(key);\n });\n keys.sort().forEach( key => {\n const value = res[key];\n if(value != null){\n const item = {\n \tlabel: key,\n \tvalue: \"\" + ((typeof value == \"object\")? JSON.stringify(value) : value)\n } as Item;\n this.items.push(item);\n }\n });\r\n },\r\n //自动化测试例专用\r\n jest_getSystemInfo() : GetSystemInfoResult {\r\n return uni.getSystemInfoSync();\r\n },\r\n }\r\n }\r\n\n```\n:::"},"getSystemInfoSync":{"name":"## uni.getSystemInfoSync() @getsysteminfosync","description":"同步获取系统信息","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetSystemInfoResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SDKVersion | string | 是 | - | | 客户端基础库版本
|\n@| appId | string | 是 | - | | `manifest.json` 中应用appid。
|\n@| appLanguage | string | 是 | - | | 应用设置的语言。
|\n@| appName | string | 是 | - | | `manifest.json` 中应用名称。
|\n@| appVersion | string | 是 | - | | `manifest.json` 中应用版本名称。
|\n@| appVersionCode | string | 是 | - | | `manifest.json` 中应用版本名号。
|\n@| ~~brand~~ | string | 是 | - | | 手机品牌。 **已废弃,仅为了向下兼容保留** |\n@| browserName | string | 是 | - | | 浏览器名称。`App` 端是系统 webview 的名字,比如 wkwebview、chrome。小程序端为空
|\n@| browserVersion | string | 是 | - | | 浏览器版本、webview 版本。
|\n@| deviceId | string | 是 | - | | 设备 ID
|\n@| deviceBrand | string | 是 | - | | 设备品牌。如:`apple`、`huawei`。
|\n@| deviceModel | string | 是 | - | | 设备型号
|\n@| deviceType | \"phone\" \\| \"pad\" \\| \"tv\" \\| \"watch\" \\| \"pc\" \\| \"null\" \\| \"car\" \\| \"vr\" \\| \"appliance\" | 是 | - | | 设备类型。
|\n@| devicePixelRatio | number | 是 | - | | 设备像素比
|\n@| deviceOrientation | \"portrait\" \\| \"landscape\" | 是 | - | | 设备方向。 |\n@| ~~language~~ | string | 是 | - | | 程序设置的语言 **已废弃,仅为了向下兼容保留** |\n@| ~~model~~ | string | 是 | - | | 手机型号 **已废弃,仅为了向下兼容保留** |\n@| osName | \"ios\" \\| \"android\" \\| \"macos\" \\| \"windows\" \\| \"linux\" | 是 | - | | 系统名称\t
|\n@| osVersion | string | 是 | - | | 操作系统版本。如 ios 版本,andriod 版本
|\n@| osLanguage | string | 是 | - | | 操作系统语言
|\n@| osTheme | \"light\" \\| \"dark\" | 否 | - | | 操作系统主题
|\n@| ~~pixelRatio~~ | number | 是 | - | | 设备像素比 **已废弃,仅为了向下兼容保留** |\n@| ~~platform~~ | \"ios\" \\| \"android\" \\| \"mac\" \\| \"windows\" \\| \"linux\" | 是 | - | | 客户端平台 **已废弃,仅为了向下兼容保留** |\n@| screenWidth | number | 是 | - | | 屏幕宽度,单位为px
|\n@| screenHeight | number | 是 | - | | 屏幕高度,单位为px
|\n@| statusBarHeight | number | 是 | - | | 状态栏的高度,单位为px
|\n@| ~~system~~ | string | 是 | - | | 操作系统版本 **已废弃,仅为了向下兼容保留** |\n@| safeArea | **SafeArea** | 是 | - | | 在竖屏正方向下的安全区域
|\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| left | number | 是 | - | | 安全区域左上角横坐标,单位为px
|\n@@| right | number | 是 | - | | 安全区域右下角横坐标,单位为px
|\n@@| top | number | 是 | - | | 安全区域左上角纵坐标,单位为px
|\n@@| bottom | number | 是 | - | | 安全区域右下角纵坐标,单位为px
|\n@@| width | number | 是 | - | | 安全区域的宽度,单位为px
|\n@@| height | number | 是 | - | | 安全区域的高度,单位为px
|\n@| safeAreaInsets | **SafeAreaInsets** | 是 | - | | 在竖屏正方向下的安全区域插入位置
|\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| left | number | 是 | - | | 安全区域左侧插入位置(距离左边边界距离),单位为px
|\n@@| right | number | 是 | - | | 安全区域右侧插入位置(距离右边边界距离),单位为px
|\n@@| top | number | 是 | - | | 安全区顶部插入位置(距离顶部边界距离),单位为px
|\n@@| bottom | number | 是 | - | | 安全区域底部插入位置(距离底部边界距离),单位为px
|\n@| ua | string | 是 | - | | 用户标识。小程序端为空
|\n@| ~~uniCompileVersion~~ | string | 是 | - | | uni 编译器版本。 **已废弃,仅为了向下兼容保留** |\n@| uniCompilerVersion | string | 是 | - | | uni 编译器版本。
|\n@| uniPlatform | \"app\" \\| \"web\" \\| \"mp-weixin\" \\| \"mp-alipay\" \\| \"mp-baidu\" \\| \"mp-toutiao\" \\| \"mp-lark\" \\| \"mp-qq\" \\| \"mp-kuaishou\" \\| \"mp-jd\" \\| \"mp-360\" \\| \"quickapp-webview\" \\| \"quickapp-webview-union\" \\| \"quickapp-webview-huawei\" | 是 | - | | uni-app 运行平台,与条件编译平台相同。
|\n@| uniRuntimeVersion | string | 是 | - | | uni 运行时版本。
|\n@| ~~uniCompileVersionCode~~ | number | 是 | - | | uni 编译器版本号。 **已废弃,仅为了向下兼容保留** |\n@| uniCompilerVersionCode | number | 是 | - | | uni 编译器版本号。
|\n@| uniRuntimeVersionCode | number | 是 | - | | uni 运行时版本号。
|\n@| ~~version~~ | string | 是 | - | | 引擎版本号。 **已废弃,仅为了向下兼容保留** |\n@| romName | string | 是 | - | | rom 名称。Android 部分机型获取不到值。iOS 恒为 `ios`
|\n@| romVersion | string | 是 | - | | rom 版本号。Android 部分机型获取不到值。iOS 为操作系统版本号(同 `osVersion`)。
|\n@| windowWidth | number | 是 | - | | 可使用窗口宽度,单位为px
|\n@| windowHeight | number | 是 | - | | 可使用窗口高度,单位为px
|\n@| windowTop | number | 是 | - | | 内容区域距离顶部的距离(同CSS变量 `--window-top`),单位为px
|\n@| windowBottom | number | 是 | - | | 内容区域距离底部的距离(同CSS变量 `--window-bottom`),单位为px
|\n@| osAndroidAPILevel | number \\| null | 否 | - | | Android 系统API库的版本。
|\n@| appTheme | \"light\" \\| \"dark\" \\| \"auto\" | 否 | - | | 当前App的主题
| \n","compatibility":"### getSystemInfoSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/system/info?id=getsysteminfosync)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.getSystemInfo.getSystemInfoSync)\n"},"getDeviceInfo":{"name":"## uni.getDeviceInfo(options?) @getdeviceinfo","description":"获取设备信息","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **GetDeviceInfoOptions** | 否 | 包含所有字段的过滤对象 | - | \\[options=包含所有字段的过滤对象]过滤的字段对象, 不传参数默认为获取全部字段。 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filter | Array\\ | 是 | - | - | 过滤字段的字符串数组,假如要获取指定字段,传入此数组。 | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetDeviceInfoResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| ~~brand~~ | string | 否 | - | | 设备品牌 **已废弃,仅为了向下兼容保留** |\n@| deviceBrand | string | 否 | - | | 设备品牌
|\n@| deviceId | string | 否 | - | | 设备 id 。由 uni-app 框架生成并存储,清空 Storage 会导致改变
|\n@| ~~model~~ | string | 否 | - | | 设备型号\t **已废弃,仅为了向下兼容保留** |\n@| deviceModel | string | 否 | - | | 设备型号\t
|\n@| deviceType | \"phone\" \\| \"pad\" \\| \"tv\" \\| \"watch\" \\| \"pc\" \\| \"null\" \\| \"car\" \\| \"vr\" \\| \"appliance\" | 否 | - | | 设备类型phone、pad、pc\t
|\n@| deviceOrientation | string | 否 | - | | 设备方向 竖屏 portrait、横屏 landscape\t
|\n@| devicePixelRatio | number | 否 | - | | 设备像素比\t
|\n@| system | string | 否 | - | | 操作系统及版本\t
|\n@| platform | \"ios\" \\| \"android\" \\| \"mac\" \\| \"windows\" \\| \"linux\" | 否 | - | | 客户端平台\t
|\n@| isRoot | boolean | 否 | - | | 是否root。iOS 为是否越狱
|\n@| isSimulator | boolean | 否 | - | | 是否是模拟器
|\n@| isUSBDebugging | boolean | 否 | - | | adb是否开启
|\n@| osName | \"ios\" \\| \"android\" \\| \"macos\" \\| \"windows\" \\| \"linux\" | 否 | - | | 系统名称\t
|\n@| osVersion | string \\| null | 否 | - | | 操作系统版本。如 ios 版本,andriod 版本
|\n@| osLanguage | string \\| null | 否 | - | | 操作系统语言
|\n@| osTheme | \"light\" \\| \"dark\" | 否 | - | | 操作系统主题
|\n@| osAndroidAPILevel | number \\| null | 否 | - | | Android 系统API库的版本。
|\n@| romName | string \\| null | 否 | - | | rom 名称。Android 部分机型获取不到值。iOS 恒为 `ios`
|\n@| romVersion | string \\| null | 否 | - | | rom 版本号。Android 部分机型获取不到值。iOS 为操作系统版本号(同 `osVersion`)。
| \n","compatibility":"### getDeviceInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/getDeviceInfo.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.getDeviceInfo)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-device-info/get-device-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-device-info/get-device-info\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { setDevicePixelRatio } from '@/store/index.uts'\r\n\r\n type Item = {\r\n label : string,\r\n value : string,\r\n }\r\n export default {\r\n data() {\r\n return {\r\n title: 'getDeviceInfo',\r\n items: [] as Item[],\r\n }\r\n },\r\n onUnload: function () {\r\n },\r\n methods: {\r\n getDeviceInfo: function () {\r\n const res = uni.getDeviceInfo();\r\n // 获取像素比, 供截图对比使用\r\n setDevicePixelRatio(res.devicePixelRatio !== null ? res.devicePixelRatio! : 1)\r\n this.items = [] as Item[];\r\n\r\n const res_str = JSON.stringify(res);\r\n const res_obj = JSON.parseObject(res_str);\r\n const res_map = res_obj!.toMap();\r\n let keys = [] as string[]\r\n res_map.forEach((_, key) => {\r\n keys.push(key);\r\n });\r\n keys.sort().forEach(key => {\r\n const value = res[key];\r\n if (value != null) {\r\n const item = {\r\n label: key,\r\n value: \"\" + ((typeof value == \"object\") ? JSON.stringify(value) : value)\r\n } as Item;\r\n this.items.push(item);\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\n```\n:::"},"getWindowInfo":{"name":"## uni.getWindowInfo() @getwindowinfo","description":"同步获取窗口信息","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetWindowInfoResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| pixelRatio | number | 是 | - | | 设备像素比
|\n@| screenWidth | number | 是 | - | | 屏幕宽度,单位为px
|\n@| screenHeight | number | 是 | - | | 屏幕高度,单位为px
|\n@| windowWidth | number | 是 | - | | 可使用窗口宽度,单位为px
|\n@| windowHeight | number | 是 | - | | 可使用窗口高度,单位为px
|\n@| statusBarHeight | number | 是 | - | | 状态栏的高度,单位为px
|\n@| windowTop | number | 是 | - | | 内容区域距离顶部的距离(同CSS变量 `--window-top`),单位为px
|\n@| windowBottom | number | 是 | - | | 内容区域距离底部的距离(同CSS变量 `--window-bottom`),单位为px
|\n@| safeArea | **SafeArea** | 是 | - | | 安全区域在屏幕中的位置信息
|\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| left | number | 是 | - | | 安全区域左上角横坐标,单位为px
|\n@@| right | number | 是 | - | | 安全区域右下角横坐标,单位为px
|\n@@| top | number | 是 | - | | 安全区域左上角纵坐标,单位为px
|\n@@| bottom | number | 是 | - | | 安全区域右下角纵坐标,单位为px
|\n@@| width | number | 是 | - | | 安全区域的宽度,单位为px
|\n@@| height | number | 是 | - | | 安全区域的高度,单位为px
|\n@| safeAreaInsets | **SafeAreaInsets** | 是 | - | | 安全区域插入位置(与屏幕边界的距离)信息
|\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| left | number | 是 | - | | 安全区域左侧插入位置(距离左边边界距离),单位为px
|\n@@| right | number | 是 | - | | 安全区域右侧插入位置(距离右边边界距离),单位为px
|\n@@| top | number | 是 | - | | 安全区顶部插入位置(距离顶部边界距离),单位为px
|\n@@| bottom | number | 是 | - | | 安全区域底部插入位置(距离底部边界距离),单位为px
|\n@| screenTop | number | 是 | - | | 窗口上边缘的 y 值,单位为px
| \n","compatibility":"### getWindowInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/system/getWindowInfo.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.getWindowInfo)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-window-info/get-window-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-window-info/get-window-info\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { setStatusBarHeight, setSafeArea } from '@/store/index.uts'\r\n // #ifdef APP-ANDROID\r\n import type { SafeArea } from '@/store/index.uts'\r\n // #endif\r\n\r\n type Item = {\r\n label : string,\r\n value : string,\r\n }\r\n export default {\r\n data() {\r\n return {\r\n title: 'getWindowInfo',\r\n items: [] as Item[],\r\n }\r\n },\r\n onUnload: function () {\r\n },\r\n onReady() {\r\n this.getWindowInfo()\r\n },\r\n methods: {\r\n getWindowInfo: function () {\r\n const res = uni.getWindowInfo();\r\n // 获取状态栏高度, 供截图对比使用\r\n setStatusBarHeight(res.statusBarHeight);\r\n // 获取安全区信息,供截图使用\r\n // #ifdef APP-ANDROID\r\n setSafeArea({\r\n top: res.safeArea.top,\r\n left: res.safeArea.left,\r\n right: res.safeArea.right,\r\n bottom: res.safeArea.bottom,\r\n width: res.safeArea.width,\r\n height: res.safeArea.height,\r\n } as SafeArea);\r\n // #endif\r\n // #ifdef APP-IOS\r\n setSafeArea({\r\n top: res.safeArea.top,\r\n left: res.safeArea.left,\r\n right: res.safeArea.right,\r\n bottom: res.safeArea.bottom,\r\n width: res.safeArea.width,\r\n height: res.safeArea.height,\r\n });\r\n // #endif\r\n this.items = [] as Item[];\r\n\r\n const res_str = JSON.stringify(res);\r\n const res_obj = JSON.parseObject(res_str);\r\n const res_map = res_obj!.toMap();\r\n let keys = [] as string[]\r\n res_map.forEach((_, key) => {\r\n keys.push(key);\r\n });\r\n keys.sort().forEach(key => {\r\n const value = res[key];\r\n if (value != null) {\r\n const item = {\r\n label: key,\r\n value: \"\" + ((typeof value == \"object\") ? JSON.stringify(value) : value)\r\n } as Item;\r\n this.items.push(item);\r\n }\r\n });\r\n },\r\n //自动化测试例专用\r\n jest_getWindowInfo() : GetWindowInfoResult {\r\n return uni.getWindowInfo();\r\n },\r\n }\r\n }\r\n\n```\n:::"},"getAppBaseInfo":{"name":"## uni.getAppBaseInfo(options?) @getappbaseinfo","description":"获取app基本信息","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **GetAppBaseInfoOptions** | 否 | 包含所有字段的过滤对象 | - | \\[options=包含所有字段的过滤对象] 过滤的字段对象, 不传参数默认为获取全部字段。 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filter | Array\\ | 是 | - | - | 过滤字段的字符串数组,假如要获取指定字段,传入此数组。 | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetAppBaseInfoResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| appId | string | 否 | - | | manifest.json 中应用appid,即DCloud appid。\t
|\n@| appName | string | 否 | - | | `manifest.json` 中应用名称。
|\n@| appVersion | string | 否 | - | | `manifest.json` 中应用版本名称。
|\n@| appVersionCode | string | 否 | - | | `manifest.json` 中应用版本名号。
|\n@| appLanguage | string | 否 | - | | 应用设置的语言en、zh-Hans、zh-Hant、fr、es\t
|\n@| language | string | 否 | - | | 应用设置的语言\t
|\n@| ~~version~~ | string | 否 | - | | 引擎版本号。已废弃,仅为了向下兼容保留 **已废弃,仅为了向下兼容保留** |\n@| isUniAppX | boolean | 否 | - | | 是否uni-app x
|\n@| ~~uniCompileVersion~~ | string | 否 | - | | uni 编译器版本 **已废弃,仅为了向下兼容保留** |\n@| uniCompilerVersion | string | 否 | - | | uni 编译器版本
|\n@| uniPlatform | \"app\" \\| \"web\" \\| \"mp-weixin\" \\| \"mp-alipay\" \\| \"mp-baidu\" \\| \"mp-toutiao\" \\| \"mp-lark\" \\| \"mp-qq\" \\| \"mp-kuaishou\" \\| \"mp-jd\" \\| \"mp-360\" \\| \"quickapp-webview\" \\| \"quickapp-webview-union\" \\| \"quickapp-webview-huawei\" | 否 | - | | uni-app 运行平台。
|\n@| uniRuntimeVersion | string | 否 | - | | uni 运行时版本
|\n@| ~~uniCompileVersionCode~~ | number | 否 | - | | uni 编译器版本号 **已废弃,仅为了向下兼容保留** |\n@| uniCompilerVersionCode | number | 否 | - | | uni 编译器版本号
|\n@| uniRuntimeVersionCode | number | 否 | - | | uni 运行时版本号
|\n@| packageName | string | 否 | - | | Android的包名
|\n@| bundleId | string | 否 | - | | iOS的bundleId
|\n@| signature | string | 否 | - | | Android: 应用签名证书的SHA1值(全部为小写,中间不包含“:”)。 为了保证应用的安全性,请使用自己生成的证书(不要使用公共测试证书)。
iOS: 应用签名证书中绑定的Bundle ID(AppleID)的md5值(全部为小写)。
|\n@| appTheme | \"light\" \\| \"dark\" \\| \"auto\" | 否 | - | | 当前App的主题
| \n","compatibility":"### getAppBaseInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/getAppBaseInfo.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.getAppBaseInfo)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-app-base-info/get-app-base-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-app-base-info/get-app-base-info\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n```\n>Script\n```uts\n\n\ttype Item = {\n\t\tlabel : string,\n\t\tvalue : string,\n\t}\n\texport default {\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\ttitle: 'getAppBaseInfo',\n\t\t\t\titems: [] as Item[],\r\n\t\t\t}\r\n\t\t},\r\n\t\tonUnload:function(){\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tgetAppBaseInfo: function () {\n\t\t\t\tconst res = uni.getAppBaseInfo();\n const res_str = JSON.stringify(res);\n const res_obj = JSON.parseObject(res_str);\n const res_map = res_obj!.toMap();\n let keys = [] as string[]\n res_map.forEach((_, key) => {\n keys.push(key);\n });\n\n this.items = [] as Item[];\n keys.sort().forEach( key => {\n const value = res[key];\n if(value != null){\n const item = {\n \tlabel: key,\n \tvalue: \"\" + ((typeof value == \"object\")? JSON.stringify(value) : value)\n } as Item;\n this.items.push(item);\n }\n });\n\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\n```\n:::"},"getAppAuthorizeSetting":{"name":"## uni.getAppAuthorizeSetting() @getappauthorizesetting","description":"获取 APP 授权设置。","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetAppAuthorizeSettingResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| albumAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 否 | - | | 允许 App 使用相册的开关(仅 iOS 支持)
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: 当前应用没有配置相册权限描述 |\n@| bluetoothAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 否 | - | | 允许 App 使用蓝牙的开关(仅 iOS 支持)
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: Android平台没有该值;iOS平台:当前应用没有配置蓝牙权限描述 |\n@| cameraAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 是 | - | | 允许 App 使用摄像头的开关
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: Android平台:表示没有配置 `android.permission.CAMERA` 权限,[权限配置详情](https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-android.html#permissions);iOS平台:当前应用没有配置相机权限描述 |\n@| locationAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 是 | - | | 允许 App 使用定位的开关
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: Android平台:表示没有配置 `android.permission.ACCESS_COARSE_LOCATION` 权限,[权限配置详情](https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-android.html#permissions);iOS平台:当前应用没有配置定位权限描述 |\n@| locationAccuracy | \"reduced\" \\| \"full\" \\| \"unsupported\" | 否 | - | | 定位准确度。
- reduced: 模糊定位
- full: 精准定位
- unsupported: 不支持(包括用户拒绝定位权限和没有包含定位权限描述) |\n@| locationReducedAccuracy | boolean \\| null | 否 | - | | 定位准确度(推荐使用 locationAccuracy 属性)。true 表示模糊定位,false 表示精确定位(仅 iOS 支持) |\n@| microphoneAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 是 | - | | 允许 App 使用麦克风的开关
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: Android平台:表示没有配置 `android.permission.RECORD_AUDIO` 权限,[权限配置详情](https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-android.html#permissions);iOS平台:当前应用没有配置麦克风权限描述 |\n@| notificationAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 是 | - | | 允许 App 通知的开关
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: Android平台没有该值;iOS平台:没有包含推送权限描述 |\n@| notificationAlertAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 否 | - | | 允许 App 通知带有提醒的开关(仅 iOS 支持)
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: 当前应用没有配置推送权限描述 |\n@| notificationBadgeAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 否 | - | | 允许 App 通知带有标记的开关(仅 iOS 支持)
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: 当前应用没有配置推送权限描述 |\n@| notificationSoundAuthorized | \"authorized\" \\| \"denied\" \\| \"not determined\" \\| \"config error\" | 否 | - | | 允许 App 通知带有声音的开关(仅 iOS 支持)
- authorized: 已经获得授权,无需再次请求授权
- denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
- not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
- config error: 当前应用没有配置推送权限描述 | \n","compatibility":"### getAppAuthorizeSetting 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/system/getappauthorizesetting)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.getAppAuthorizeSetting)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-app-authorize-setting/get-app-authorize-setting.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\r\n\r\n\r\n\n\n```"},"getSystemSetting":{"name":"## uni.getSystemSetting() @getsystemsetting","description":"获取系统设置","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetSystemSettingResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| bluetoothEnabled | boolean | 否 | - | | 蓝牙是否开启
|\n@| bluetoothError | string | 否 | - | | 蓝牙的报错信息
|\n@| locationEnabled | boolean | 是 | - | | 位置是否开启
|\n@| wifiEnabled | boolean | 否 | - | | wifi是否开启
|\n@| wifiError | string | 否 | - | | wifi的报错信息
|\n@| deviceOrientation | \"portrait\" \\| \"landscape\" | 是 | - | | 设备方向
| \n","compatibility":"### getSystemSetting 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/getsystemsetting.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.getSystemSetting)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-system-setting/get-system-setting.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\r\n\r\n\r\n\n\n```"},"installApk":{"name":"## uni.installApk(options) @installapk","description":"安装apk","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [InstallApkOptions](#installapkoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | string | 是 | - | - | apk文件地址 |\n@| success | (res: [InstallApkSuccess](#installapksuccess-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (err: [InstallApkFail](#installapkfail-values)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### InstallApkSuccess 的属性值 @installapksuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | 安装成功消息 |\n\n##### InstallApkFail 的属性值 @installapkfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | 错误码
- 1300002 找不到文件 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### installApk 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.94 | x |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.installApk)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/install-apk/install-apk.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\r\n\r\n\n\n```"},"getPushClientId":{"name":"## uni.getPushClientId(options) @getpushclientid","description":"获取客户端唯一的推送标识","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetPushClientIdOptions](#getpushclientidoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: [GetPushClientIdSuccess](#getpushclientidsuccess-values)) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetPushClientIdSuccess 的属性值 @getpushclientidsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| cid | string | 是 | - | | 个推客户端推送id,对应uni-id-device表的push_clientid
|\n| errMsg | string | 是 | - | | 错误描述
|\n","returnValue":"","compatibility":"### getPushClientId 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/plugins/push.html#getpushclientid)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.push.uni-push.getPushClientId)\n"},"onPushMessage":{"name":"## uni.onPushMessage(callback) @onpushmessage","description":"启动监听推送消息事件","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnPushMessageCallbackResult](#onpushmessagecallbackresult-values)) => void | 是 | - | - | | \n\n#### OnPushMessageCallbackResult 的属性值 @onpushmessagecallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | \"click\" \\| \"receive\" | 是 | - | | 事件类型
- click 从系统推送服务点击消息启动应用事件
- receive 应用从推送服务器接收到推送消息事件 |\n| data | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) | 是 | - | | 消息内容
|\n","returnValue":"","compatibility":"### onPushMessage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/plugins/push.html#onpushmessage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.push.uni-push.onPushMessage)\n"},"offPushMessage":{"name":"## uni.offPushMessage(callback) @offpushmessage","description":"关闭推送消息监听事件,iOS端调用会关闭所有监听。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnPushMessageCallbackResult](#onpushmessagecallbackresult-values)) => void | 是 | - | - | | \n\n#### OnPushMessageCallbackResult 的属性值 @onpushmessagecallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | \"click\" \\| \"receive\" | 是 | - | | 事件类型
- click 从系统推送服务点击消息启动应用事件
- receive 应用从推送服务器接收到推送消息事件 |\n| data | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) | 是 | - | | 消息内容
|\n","returnValue":"","compatibility":"### offPushMessage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/plugins/push.html#offpushmessage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.push.uni-push.offPushMessage)\n"},"getChannelManager":{"name":"## uni.getChannelManager() @getchannelmanager","description":"获取通知渠道管理器,Android 8系统以上才可以设置通知渠道,Android 8系统以下返回null。","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [ChannelManager](#channelmanager-values) |\n\n#### ChannelManager 的方法 @channelmanager-values \n\n#### setPushChannel(options) @setpushchannel\n设置推送渠道
\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **SetPushChannelOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| soundName | string \\| null | 否 | null | - | 添加的声音文件,注意raw目录下必须要有 ,不传此字段将使用默认铃音。 |\n@| channelId | string | 是 | - | - | 通知渠道id |\n@| channelDesc | string | 是 | - | - | 通知渠道描述 |\n@| enableLights | boolean \\| null | 否 | false | - | 呼吸灯闪烁 |\n@| enableVibration | boolean \\| null | 否 | false | - | 震动 |\n@| importance | number \\| null | 否 | 3 | - | 通知的重要性级别,可选范围IMPORTANCE_LOW:2、IMPORTANCE_DEFAULT:3、IMPORTANCE_HIGH:4 。 |\n@| lockscreenVisibility | number \\| null | 否 | -1000 | - | 锁屏可见性,可选范围VISIBILITY_PRIVATE:0、VISIBILITY_PUBLIC:1、VISIBILITY_SECRET:-1、VISIBILITY_NO_OVERRIDE:-1000。 | \n\n\n##### setPushChannel 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | x |\n\n\n#### getAllChannels() @getallchannels\n获取当前应用注册的所有的通知渠道。
\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Array\\ |\n \n\n##### getAllChannels 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | x |\n\n \n","compatibility":"### getChannelManager 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | x |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.push.uni-push.getChannelManager)\n"},"createPushMessage":{"name":"## uni.createPushMessage(options) @createpushmessage","description":"创建本地通知栏消息","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **CreatePushMessageOptions** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| cover | boolean \\| null | 否 | false | | 是否覆盖上一次提示的消息 |\n@| delay | number \\| null | 否 | 0 | | 提示消息延迟显示的时间,单位为s |\n@| icon | string \\| null | 否 | null | | 推送消息的图标 |\n@| sound | string \\| null | 否 | \"system\" | | 推送消息的提示音
- system: 使用系统通知提示音(默认值)
- none: 不使用提示音 |\n@| title | string \\| null | 否 | App的名称 | | 推送消息的标题 |\n@| content | string | 是 | - | | 消息显示的内容,在系统通知中心中显示的文本内容
|\n@| payload | any \\| null | 否 | null | | 消息承载的数据,可根据业务逻辑自定义数据格式 |\n@| when | number \\| null | 否 | 当前时间 | | 消息上显示的提示时间 |\n@| channelId | string \\| null | 否 | \"DcloudChannelID\" | | 渠道id |\n@| category | string \\| null | 否 | null | | 通知类别 |\n@| success | (result: CreatePushMessageSuccess) => void \\| null | 否 | null | - | 接口调用成功的回调函数 |\n@| fail | (result: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | null | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | null | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n","returnValue":"","compatibility":"### createPushMessage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.98 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/plugins/push.html#createpushmessage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.push.uni-push.createPushMessage)\n"},"getBatteryInfo":{"name":"## uni.getBatteryInfo(options) @getbatteryinfo","description":"获取电池电量信息

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-getbatteryinfo](https://ext.dcloud.net.cn/plugin?name=uni-getbatteryinfo)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetBatteryInfoOptions](#getbatteryinfooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [GetBatteryInfoSuccess](#getbatteryinfosuccess-values)) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) |\n@| fail | (res: UniError) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void | 否 | - | - | 接口调用成功的回调 | \n\n##### GetBatteryInfoSuccess 的属性值 @getbatteryinfosuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n| level | number | 是 | - | - | 设备电量,范围1 - 100 |\n| isCharging | boolean | 是 | - | - | 是否正在充电中 |\n","returnValue":"","compatibility":"### getBatteryInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.getBatteryInfo.getBatteryInfo)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-battery-info/get-battery-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-battery-info/get-battery-info\n>Template\n```vue\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n level: 0,\n isCharging: false\n }\n },\n onLoad() {\n try {\n uni.getBatteryInfo({\n success: res => {\n this.level = res.level;\n this.isCharging = res.isCharging;\n }\n });\n } catch (e) {\n console.error((e as Error).message);\n uni.showModal({\n content: (e as Error).message,\n showCancel: false\n });\n }\n }\n }\n\n```\n:::"},"getBatteryInfoSync":{"name":"## uni.getBatteryInfoSync() @getbatteryinfosync","description":"同步获取电池电量信息

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-getbatteryinfo](https://ext.dcloud.net.cn/plugin?name=uni-getbatteryinfo)
","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetBatteryInfoResult** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| level | number | 是 | - | - | 设备电量,范围1 - 100 |\n@| isCharging | boolean | 是 | - | - | 是否正在充电中 | \n","compatibility":"### getBatteryInfoSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.getBatteryInfo.getBatteryInfoSync)\n"},"makePhoneCall":{"name":"## uni.makePhoneCall(options) @makephonecall","description":"拨打电话
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [MakePhoneCallOptions](#makephonecalloptions-values) | 是 | - | - | uni.makePhoneCall |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| phoneNumber | string | 是 | - | - | 需要拨打的电话号码 |\n@| success | (res: MakePhoneCallSuccess) => void | 否 | - | - | uni.makePhoneCall成功回调函数定义 |\n@| fail | (res: [IMakePhoneCallError](#imakephonecallerror-values)) => void | 否 | - | - | uni.makePhoneCall失败回调函数定义 |\n@| complete | (res: any) => void | 否 | - | - | uni.makePhoneCall完成回调函数定义 | \n\n##### IMakePhoneCallError 的属性值 @imakephonecallerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### makePhoneCall 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [makePhoneCall](https://doc.dcloud.net.cn/uni-app-x/api/make-phone-call.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.makePhoneCall)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/make-phone-call/make-phone-call.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/make-phone-call/make-phone-call\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\ttitle: 'makePhoneCall',\n\t\t\t\tdisabled: true,\n inputValue:''\n\t\t\t}\n\t\t},\n\t\tmethods: {\n\t\t\tbindInput: function (e : UniInputEvent) {\n\t\t\t\tthis.inputValue = e.detail.value\n\t\t\t\tif (this.inputValue.length > 0) {\n\t\t\t\t\tthis.disabled = false\n\t\t\t\t} else {\n\t\t\t\t\tthis.disabled = true\n\t\t\t\t}\n\t\t\t},\n\t\t\tmakePhoneCall: function () {\n\t\t\t\tuni.makePhoneCall({\n\t\t\t\t\tphoneNumber: this.inputValue,\n\t\t\t\t\tsuccess: () => {\n\t\t\t\t\t\tconsole.log(\"成功拨打电话\")\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\n```\n:::"},"onCompassChange":{"name":"## uni.onCompassChange(callback) @oncompasschange","description":"监听罗盘数据
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [OnCompassChangeSuccess](#oncompasschangesuccess-values)) => void | 是 | - | - | - | \n\n#### OnCompassChangeSuccess 的属性值 @oncompasschangesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| direction | number | 是 | - | - | 面对的方向度数 |\n","returnValue":"","compatibility":"### onCompassChange 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/api/system/compass.html#oncompasschange)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.onCompassChange)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/on-compass-change/on-compass-change.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/on-compass-change/on-compass-change\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\ttitle: 'onCompassChange',\n\t\t\t\tdirection: 0\n\t\t\t}\n\t\t},\n\t\tonReady: function () {\n\t\t\tuni.onCompassChange((res) => {\n console.log('onCompassChange', res)\n\t\t\t\tthis.direction = res.direction\n\t\t\t})\n\t\t},\n\t\tonUnload() {\n\t\t\tuni.stopCompass();\n\t\t\tthis.direction = 0;\n\t\t}\n\t}\n\n```\n:::"},"offCompassChange":{"name":"## uni.offCompassChange(callback) @offcompasschange","description":"取消监听罗盘数据
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n","returnValue":"","compatibility":"### offCompassChange 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/api/system/compass.html#offcompasschange)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.offCompassChange)\n"},"startCompass":{"name":"## uni.startCompass(options?) @startcompass","description":"开始监听罗盘数据
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [StartCompassOptions](#startcompassoptions-values) | 否 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: CompassSuccess) => void | 否 | - | - | uni.startCompass成功回调函数定义 |\n@| fail | (res: [ICompassError](#icompasserror-values)) => void | 否 | - | - | uni.startCompass失败回调函数定义 |\n@| complete | (res: any) => void | 否 | - | - | uni.startCompass完成回调函数定义 | \n\n##### ICompassError 的属性值 @icompasserror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### startCompass 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/api/system/compass.html#startcompass)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.startCompass)\n"},"stopCompass":{"name":"## uni.stopCompass(options?) @stopcompass","description":"停止监听罗盘数据
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [StopCompassOptions](#stopcompassoptions-values) | 否 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: CompassSuccess) => void | 否 | - | - | 成功返回的回调函数 |\n@| fail | (res: [ICompassError](#icompasserror-values)) => void | 否 | - | - | 失败的回调函数 |\n@| complete | (res: any) => void | 否 | - | - | 结束的回调函数(调用成功、失败都会执行) | \n\n##### ICompassError 的属性值 @icompasserror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### stopCompass 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/api/system/compass.html#stopcompass)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.stopCompass)\n"},"startWifi":{"name":"## uni.startWifi(option) @startwifi","description":"初始化Wi-Fi模块

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | [WifiOption](#wifioption-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [UniWifiResult](#uniwifiresult-values)) => void | 否 | - | - | - |\n@| fail | (res: UniError) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### UniWifiResult 的属性值 @uniwifiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n| wifi | **UniWifiInfo** \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 是 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| secure | boolean | 否 | - | - | - |\n@| signalStrength | number | 否 | - | - | - |\n@| frequency | number | 否 | - | - | - |\n","returnValue":"","compatibility":"### startWifi 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#startwifi)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.startWifi)\n"},"stopWifi":{"name":"## uni.stopWifi(option) @stopwifi","description":"关闭 Wi-Fi 模块

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | [WifiOption](#wifioption-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [UniWifiResult](#uniwifiresult-values)) => void | 否 | - | - | - |\n@| fail | (res: UniError) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### UniWifiResult 的属性值 @uniwifiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n| wifi | **UniWifiInfo** \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 是 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| secure | boolean | 否 | - | - | - |\n@| signalStrength | number | 否 | - | - | - |\n@| frequency | number | 否 | - | - | - |\n","returnValue":"","compatibility":"### stopWifi 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | x | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#stopwifi)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.stopWifi)\n"},"connectWifi":{"name":"## uni.connectWifi(option) @connectwifi","description":"","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | [WifiConnectOption](#wificonnectoption-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 否 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| password | string | 否 | - | - | - |\n@| maunal | boolean | 否 | - | - | - |\n@| partialInfo | boolean | 否 | - | - | - |\n@| success | (res: [UniWifiResult](#uniwifiresult-values)) => void | 否 | - | - | - |\n@| fail | (res: UniError) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### UniWifiResult 的属性值 @uniwifiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n| wifi | **UniWifiInfo** \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 是 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| secure | boolean | 否 | - | - | - |\n@| signalStrength | number | 否 | - | - | - |\n@| frequency | number | 否 | - | - | - |\n","returnValue":"","compatibility":"### connectWifi 兼容性 \n| Web | Android 系统版本 | Android | iOS |\n| :- | :- | :- | :- |\n| - | >=4.4 && <10.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#connectWifi)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.connectWifi)\n"},"getWifiList":{"name":"## uni.getWifiList(option) @getwifilist","description":"请求获取 Wi-Fi 列表。wifiList 数据会在 onGetWifiList 注册的回调中返回。
> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | [WifiOption](#wifioption-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [UniWifiResult](#uniwifiresult-values)) => void | 否 | - | - | - |\n@| fail | (res: UniError) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### UniWifiResult 的属性值 @uniwifiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n| wifi | **UniWifiInfo** \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 是 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| secure | boolean | 否 | - | - | - |\n@| signalStrength | number | 否 | - | - | - |\n@| frequency | number | 否 | - | - | - |\n","returnValue":"","compatibility":"### getWifiList 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#getWifiList)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.getWifiList)\n"},"onGetWifiList":{"name":"## uni.onGetWifiList(callback) @ongetwifilist","description":"监听获取到 Wi-Fi 列表数据事件。

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (wifiInfo: any) => void | 是 | - | - | | \n","returnValue":"","compatibility":"### onGetWifiList 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#onGetWifiList)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.onGetWifiList)\n"},"offGetWifiList":{"name":"## uni.offGetWifiList(callback) @offgetwifilist","description":"移除获取到 Wi-Fi 列表数据事件的监听函数。

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | () => void | 是 | - | - | | \n","returnValue":"","compatibility":"### offGetWifiList 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#offGetWifiList)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.offGetWifiList)\n"},"getConnectedWifi":{"name":"## uni.getConnectedWifi(option) @getconnectedwifi","description":"获取已连接的 Wi-Fi 信息

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | [GetConnectedWifiOptions](#getconnectedwifioptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| partialInfo | boolean | 否 | - | - | - |\n@| success | (res: [UniWifiResult](#uniwifiresult-values)) => void | 否 | - | - | - |\n@| fail | (res: UniError) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### UniWifiResult 的属性值 @uniwifiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n| wifi | **UniWifiInfo** \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 是 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| secure | boolean | 否 | - | - | - |\n@| signalStrength | number | 否 | - | - | - |\n@| frequency | number | 否 | - | - | - |\n","returnValue":"","compatibility":"### getConnectedWifi 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#getConnectedWifi)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.getConnectedWifi)\n"},"onWifiConnected":{"name":"## uni.onWifiConnected(callback) @onwificonnected","description":"监听连接上 Wi-Fi 的事件

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (wifiInfo: [UniWifiResult](#uniwifiresult-values)) => void | 是 | - | - | | \n\n#### UniWifiResult 的属性值 @uniwifiresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n| wifi | **UniWifiInfo** \\| null | 否 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| SSID | string | 是 | - | - | - |\n@| BSSID | string | 否 | - | - | - |\n@| secure | boolean | 否 | - | - | - |\n@| signalStrength | number | 否 | - | - | - |\n@| frequency | number | 否 | - | - | - |\n","returnValue":"","compatibility":"### onWifiConnected 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#onWifiConnected)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.onWifiConnected)\n"},"onWifiConnectedWithPartialInfo":{"name":"## uni.onWifiConnectedWithPartialInfo(callback) @onwificonnectedwithpartialinfo","description":"监听连接上 Wi-Fi 的事件。

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (wifiInfo: [UniWifiInfoWithPartialInfo](#uniwifiinfowithpartialinfo-values)) => void | 是 | - | - | | \n\n#### UniWifiInfoWithPartialInfo 的属性值 @uniwifiinfowithpartialinfo-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| SSID | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### onWifiConnectedWithPartialInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#onWifiConnectedWithPartialInfo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.onWifiConnectedWithPartialInfo)\n"},"offWifiConnected":{"name":"## uni.offWifiConnected(callback?) @offwificonnected","description":"移除连接上 Wi-Fi 的事件的监听函数。

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-wifi](https://ext.dcloud.net.cn/plugin?name=uni-wifi)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | () => void \\| null | 否 | - | - | | \n","returnValue":"","compatibility":"### offWifiConnected 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/wifi.html#offWifiConnected)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.wifi.offWifiConnected)\n"},"onMemoryWarning":{"name":"## uni.onMemoryWarning(callback) @onmemorywarning","description":"开启监听内存警告

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-memorywarning](https://ext.dcloud.net.cn/plugin?name=uni-memorywarning)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (res: [MemoryWarningCallbackResult](#memorywarningcallbackresult-values)) => void | 是 | - | - | | \n\n#### MemoryWarningCallbackResult 的属性值 @memorywarningcallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| level | number | 是 | - | - | 内存警告等级(仅安卓平台有效,iOS始终是0) |\n","returnValue":"","compatibility":"### onMemoryWarning 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/memory.html#onmemorywarning)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.memory.onMemoryWarning)\n"},"offMemoryWarning":{"name":"## uni.offMemoryWarning(callback?) @offmemorywarning","description":"取消监听内存不足告警事件

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-memorywarning](https://ext.dcloud.net.cn/plugin?name=uni-memorywarning)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (res: [MemoryWarningCallbackResult](#memorywarningcallbackresult-values)) => void \\| null | 否 | - | - | | \n\n#### MemoryWarningCallbackResult 的属性值 @memorywarningcallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| level | number | 是 | - | - | 内存警告等级(仅安卓平台有效,iOS始终是0) |\n","returnValue":"","compatibility":"### offMemoryWarning 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/memory.html#offmemorywarning)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.memory.offMemoryWarning)\n"},"onUserCaptureScreen":{"name":"## uni.onUserCaptureScreen(callback?) @onusercapturescreen","description":"开启截屏监听

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-usercapturescreen](https://ext.dcloud.net.cn/plugin?name=uni-usercapturescreen)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (res: [OnUserCaptureScreenCallbackResult](#onusercapturescreencallbackresult-values)) => void \\| null | 否 | - | - | | \n\n#### OnUserCaptureScreenCallbackResult 的属性值 @onusercapturescreencallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| path | string | 否 | - | - | 截屏文件路径(仅Android返回) |\n","returnValue":"","compatibility":"### onUserCaptureScreen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/capture-screen.html#onusercapturescreen)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.captureScreen.onUserCaptureScreen)\n"},"offUserCaptureScreen":{"name":"## uni.offUserCaptureScreen(callback?) @offusercapturescreen","description":"关闭截屏监听

> 本 API 是 [uni ext api](https://uniapp.dcloud.net.cn/api/extapi.html),需下载插件:[uni-usercapturescreen](https://ext.dcloud.net.cn/plugin?name=uni-usercapturescreen)
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (res: [OnUserCaptureScreenCallbackResult](#onusercapturescreencallbackresult-values)) => void \\| null | 否 | - | - | | \n\n#### OnUserCaptureScreenCallbackResult 的属性值 @onusercapturescreencallbackresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| path | string | 否 | - | - | 截屏文件路径(仅Android返回) |\n","returnValue":"","compatibility":"### offUserCaptureScreen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/system/capture-screen.html#offusercapturescreen)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.captureScreen.offUserCaptureScreen)\n"},"createRequestPermissionListener":{"name":"## uni.createRequestPermissionListener() @createrequestpermissionlistener","description":"创建一个监听权限申请的对象。","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [RequestPermissionListener](#requestpermissionlistener-values) |\n\n#### RequestPermissionListener 的方法 @requestpermissionlistener-values \n\n#### onRequest(callback) @onrequest\n监听申请系统权限\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (permissions: Array\\) => void | 是 | - | - | 申请系统权限回调,permissions为触发权限申请的所有权限 | \n\n\n##### onRequest 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onConfirm(callback) @onconfirm\n监听弹出系统权限授权框\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (permissions: Array\\) => void | 是 | - | - | 弹出系统权限授权框回调,permissions为触发弹出权限授权框的所有权限 | \n\n\n##### onConfirm 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onComplete(callback) @oncomplete\n监听权限申请完成\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (permissions: Array\\) => void | 是 | - | - | 权限申请完成回调,permissions为申请完成的所有权限 | \n\n\n##### onComplete 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### stop() @stop\n取消所有监听\n\n\n##### stop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### createRequestPermissionListener 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 4.0 | - |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.device.createRequestPermissionListener)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/create-request-permission-listener/create-request-permission-listener.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"chooseImage":{"name":"## uni.chooseImage(options) @chooseimage","description":"从本地相册选择图片或使用相机拍照","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ChooseImageOptions](#chooseimageoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| count | number \\| null | 否 | 9 | - | 最多可以选择的图片张数,app端不限制,微信小程序最多可支持20个。 |\n@| sourceType | Array\\ \\| null | 否 | ['album','camera'\\] | - | album 从相册选图,camera 使用相机,默认二者都有 |\n@| success | (callback: [ChooseImageSuccess](#chooseimagesuccess-values)) => void \\| null | 否 | - | - | 成功则返回图片的本地文件路径列表 tempFilePaths |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ChooseImageSuccess 的属性值 @chooseimagesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errSubject | string | 是 | - | - | 调用API的名称 |\n| errMsg | string | 是 | - | - | 描述信息 |\n| tempFilePaths | Array\\ | 是 | - | - | 图片的本地文件路径列表 |\n| tempFiles | any | 是 | - | - | 图片的本地文件列表 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### chooseImage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/image?id=chooseimage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.chooseImage)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/choose-image/choose-image.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/choose-image/choose-image\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n var sourceTypeArray = [\n ['camera'],\n ['album'],\n ['camera', 'album']\n ]\n var sizeTypeArray = [\n ['compressed'],\n ['original'],\n ['compressed', 'original']\n ]\n export default {\n data() {\n return {\n title: 'chooseImage',\n imageList: [] as Array,\n sourceTypeIndex: 2,\n sourceType: ['拍照', '相册', '拍照或相册'],\n sizeTypeIndex: 2,\n sizeType: ['压缩', '原图', '压缩或原图'],\n countIndex: 8,\n count: [1, 2, 3, 4, 5, 6, 7, 8, 9],\n isCrop: false,\n cropPercent: 80,\n cropWidth: 100,\n cropHeight: 100,\n cropResize: false\n }\n },\n onUnload() {\n this.imageList = [];\n this.sourceTypeIndex = 2\n this.sourceType = ['拍照', '相册', '拍照或相册']\n this.sizeTypeIndex = 2\n this.sizeType = ['压缩', '原图', '压缩或原图']\n this.countIndex = 8\n },\n methods: {\n cropHeightConfim(e : InputConfirmEvent) {\n let value = parseInt(e.detail.value)\n if (value > 0) {\n this.cropHeight = value\n } else {\n uni.showToast({\n position: \"bottom\",\n title: \"裁剪高度需要大于0\"\n })\n }\n },\n cropWidthConfim(e : InputConfirmEvent) {\n let value = parseInt(e.detail.value)\n if (value > 0) {\n this.cropWidth = value\n } else {\n uni.showToast({\n position: \"bottom\",\n title: \"裁剪宽度需要大于0\"\n })\n }\n },\n cropPercentConfim(e : InputConfirmEvent) {\n let value = parseInt(e.detail.value)\n if (value > 0 && value <= 100) {\n this.cropPercent = value\n } else {\n uni.showToast({\n position: \"bottom\",\n title: \"请输入0~100之间的值\"\n })\n }\n },\n cropResizeChange(e : UniSwitchChangeEvent) {\n this.cropResize = e.detail.value\n },\n switchCrop(e : UniSwitchChangeEvent) {\n this.isCrop = e.detail.value\n },\n removeImage(index : number) {\n this.imageList.splice(index, 1)\n },\n chooseImageSource() {\n uni.showActionSheet({\n itemList: ['拍照', '相册', '拍照或相册'],\n success: (e) => {\n this.sourceTypeIndex = e.tapIndex!\n }\n })\n },\n chooseImageType() {\n uni.showActionSheet({\n itemList: ['压缩', '原图', '压缩或原图'],\n success: (e) => {\n this.sizeTypeIndex = e.tapIndex!\n }\n })\n },\n chooseImageCount(event : InputConfirmEvent) {\n let count = parseInt(event.detail.value) - 1\n if (count < 0) {\n uni.showToast({\n position: \"bottom\",\n title: \"图片数量应该大于0\"\n })\n return\n }\n this.countIndex = count\n },\n chooseImage: function () {\n // var cropOption:ChooseImageCropOptions|null = this.isCrop ? null : new ChooseImageCropOptions( )\n if (this.imageList.length >= 9) {\n uni.showToast({\n position: \"bottom\",\n title: \"已经有9张图片了,请删除部分图片之后重新选择\"\n })\n return\n }\n uni.chooseImage({\n sourceType: sourceTypeArray[this.sourceTypeIndex],\n sizeType: sizeTypeArray[this.sizeTypeIndex],\n crop: this.isCrop ? { \"quality\": this.cropPercent, \"width\": this.cropWidth, \"height\": this.cropHeight, \"resize\": this.cropResize } as ChooseImageCropOptions : null,\n count: this.imageList.length + this.count[this.countIndex] > 9 ? 9 - this.imageList.length : this.count[this.countIndex],\n success: (res) => {\n this.imageList = this.imageList.concat(res.tempFilePaths);\n },\n fail: (err) => {\n console.log(\"err: \", JSON.stringify(err));\n }\n })\n },\n previewImage: function (index : number) {\n uni.previewImage({\n current: index,\n urls: this.imageList\n })\n }\n }\n }\n\n```\n:::"},"previewImage":{"name":"## uni.previewImage(options) @previewimage","description":"预览图片","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [PreviewImageOptions](#previewimageoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| current | any \\| null | 否 | - | - | current 为当前显示图片的链接/索引值,不填或填写的值无效则为 urls 的第一张。APP平台仅支持索引值。 |\n@| urls | Array\\<[string.ImageURIString](/uts/data-type.md#ide-string)\\> | 是 | - | - | 需要预览的图片链接列表 |\n@| indicator | string \\| null | 否 | - | - | 图片指示器样式
- default: 底部圆点指示器
- number: 顶部数字指示器
- none: 不显示指示器 |\n@| loop | boolean \\| null | 否 | - | - | 是否可循环预览 |\n@| success | (callback: [PreviewImageSuccess](#previewimagesuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### PreviewImageSuccess 的属性值 @previewimagesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errSubject | string | 是 | - | - | 调用API的名称 |\n| errMsg | string | 是 | - | - | 描述信息 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### previewImage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/image?id=previewimage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.previewImage.previewImage)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/preview-image/preview-image.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/preview-image/preview-image\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n type ItemType = {\n value : string,\n name : string\n }\n\n export default {\n data() {\n return {\n imageList: [\"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni@2x.png\", \"/static/uni.png\"],\n indicator: [{\n value: \"default\",\n name: \"圆点\"\n }, {\n value: \"number\",\n name: \"数字\"\n }, {\n value: \"none\",\n name: \"不显示\"\n }] as ItemType[],\n currentIndicator: \"default\",\n isLoop: true\n }\n },\n methods: {\n previewImage(index : number) {\n uni.previewImage({\n urls: this.imageList,\n current: index,\n indicator: this.currentIndicator,\n loop: this.isLoop\n })\n },\n chooseImage() {\n uni.chooseImage({\n sourceType: ['album'],\n success: (e) => {\n this.imageList = this.imageList.concat(e.tempFilePaths)\n },\n fail(_) {\n }\n })\n },\n onIndicatorChanged(e : UniRadioGroupChangeEvent) {\n this.currentIndicator = e.detail.value\n },\n onCheckboxChange(_ : UniCheckboxGroupChangeEvent) {\n this.isLoop = !this.isLoop\n }\n }\n }\n\n```\n:::"},"closePreviewImage":{"name":"## uni.closePreviewImage(options) @closepreviewimage","description":"关闭图片预览","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ClosePreviewImageOptions](#closepreviewimageoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (callback: [ClosePreviewImageSuccess](#closepreviewimagesuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ClosePreviewImageSuccess 的属性值 @closepreviewimagesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | 错误信息 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### closePreviewImage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/image?id=closepreviewimage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.previewImage.closePreviewImage)\n"},"saveImageToPhotosAlbum":{"name":"## uni.saveImageToPhotosAlbum(options) @saveimagetophotosalbum","description":"保存图片到系统相册","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SaveImageToPhotosAlbumOptions](#saveimagetophotosalbumoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.ImageURIString](/uts/data-type.md#ide-string) | 是 | - | - | 图片文件路径,可以是临时文件路径也可以是永久文件路径,不支持网络图片路径 |\n@| success | (callback: [SaveImageToPhotosAlbumSuccess](#saveimagetophotosalbumsuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SaveImageToPhotosAlbumSuccess 的属性值 @saveimagetophotosalbumsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| path | string | 是 | - | - | 保存到相册的图片路径 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### saveImageToPhotosAlbum 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/image?id=saveimagetophotosalbum)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.saveImageToPhotosAlbum)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/save-image-to-photos-album/save-image-to-photos-album.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"getImageInfo":{"name":"## uni.getImageInfo(options) @getimageinfo","description":"获取图片信息","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetImageInfoOptions](#getimageinfooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| src | [string.ImageURIString](/uts/data-type.md#ide-string) | 是 | - | - | 图片的路径,可以是相对路径,临时文件路径,存储文件路径,网络图片路径 |\n@| success | (callback: [GetImageInfoSuccess](#getimageinfosuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetImageInfoSuccess 的属性值 @getimageinfosuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| width | number | 是 | - | - | 图片宽度,单位px |\n| height | number | 是 | - | - | 图片高度,单位px |\n| path | string | 是 | - | - | 返回图片的本地路径 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### getImageInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 4.18 | - |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/image?id=getimageinfo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.getImageInfo)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-image-info/get-image-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-image-info/get-image-info\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: \"getImageInfo\",\n relativeImagePath: \"/static/test-image/logo.png\",\n relativeImageInfo: \"\",\n absoluteImagePath: \"\",\n absoluteImageInfo: \"\",\n remoteImagePath: \"https://qiniu-web-assets.dcloud.net.cn/uni-app-x/static/img/building.jpg\",\n remoteImageInfo: \"\",\n // 自动化测试\n imageInfoForTest: null as UTSJSONObject | null,\n }\n },\n methods: {\n chooseImage() {\n uni.chooseImage({\n count: 1,\n success: (res) => {\n this.absoluteImagePath = res.tempFilePaths[0];\n uni.getImageInfo({\n src: res.tempFilePaths[0],\n success: (_res) => {\n console.log(\"getImageInfo success\", JSON.stringify(res));\n this.relativeImageInfo = `图片宽度: ${_res.width}\\n图片高度: ${_res.height}\\n图片路径: ${_res.path}\\n图片方向: ${_res.orientation}\\n图片格式: ${_res.type}`;\n },\n fail: (err) => {\n uni.showModal({\n title: \"获取图片信息失败\",\n content: JSON.stringify(err),\n showCancel: false\n });\n }\n });\n }\n });\n }\n },\n onReady() {\n uni.getImageInfo({\n src: this.relativeImagePath,\n success: (res) => {\n console.log(\"getImageInfo success\", JSON.stringify(res));\n this.absoluteImageInfo = `图片宽度: ${res.width}\\n图片高度: ${res.height}\\n图片路径: ${res.path}\\n图片方向: ${res.orientation}\\n图片格式: ${res.type}`;\n this.imageInfoForTest = {\n \"width\": res.width,\n \"height\": res.height,\n \"path\": res.path.slice(res.path.indexOf('/static')),\n \"orientation\": res.orientation,\n \"type\": res.type\n };\n },\n fail: (err) => {\n uni.showModal({\n title: \"获取图片信息失败\",\n content: JSON.stringify(err),\n showCancel: false\n });\n this.imageInfoForTest = null;\n }\n });\n uni.getImageInfo({\n src: this.remoteImagePath,\n success: (res) => {\n console.log(\"getImageInfo success\", JSON.stringify(res));\n this.remoteImageInfo = `图片宽度: ${res.width}\\n图片高度: ${res.height}\\n图片路径: ${res.path}\\n图片方向: ${res.orientation}\\n图片格式: ${res.type}`;\n },\n fail: (err) => {\n uni.showModal({\n title: \"获取图片信息失败\",\n content: JSON.stringify(err),\n showCancel: false\n });\n }\n });\n }\n }\n\n```\n:::"},"compressImage":{"name":"## uni.compressImage(options) @compressimage","description":"压缩图片","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [CompressImageOptions](#compressimageoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| src | [string.ImageURIString](/uts/data-type.md#ide-string) | 是 | - | - | 图片路径,图片的路径,可以是相对路径、临时文件路径、存储文件路径 |\n@| quality | number \\| null | 否 | - | - | 压缩质量,范围0~100,数值越小,质量越低,压缩率越高(仅对jpg有效) |\n@| rotate | number \\| null | 否 | - | - | 旋转度数,范围0~360 |\n@| ~~width~~ | string \\| null | 否 | - | - | 缩放图片的宽度 **已废弃** |\n@| ~~height~~ | string \\| null | 否 | - | - | 缩放图片的高度 **已废弃** |\n@| compressedHeight | number \\| null | 否 | - | - | 压缩后图片的高度,单位为px,若不填写则默认以compressedWidth为准等比缩放 |\n@| compressedWidth | number \\| null | 否 | - | - | 压缩后图片的宽度,单位为px,若不填写则默认以compressedHeight为准等比缩放。 |\n@| success | (callback: [CompressImageSuccess](#compressimagesuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### CompressImageSuccess 的属性值 @compressimagesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tempFilePath | string | 是 | - | - | 压缩后图片的临时文件路径 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### compressImage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 4.18 | - |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/image?id=compressimage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.compressImage)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/compress-image/compress-image.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"chooseVideo":{"name":"## uni.chooseVideo(options) @choosevideo","description":"拍摄视频或从手机相册中选视频,返回视频的临时文件路径。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ChooseVideoOptions](#choosevideooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| sourceType | Array\\ \\| null | 否 | - | - | album 从相册选视频,camera 使用相机拍摄,默认为:['album', 'camera'\\] |\n@| success | (callback: [ChooseVideoSuccess](#choosevideosuccess-values)) => void \\| null | 否 | - | - | 接口调用成功,返回视频文件的临时文件路径,详见返回参数说明 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ChooseVideoSuccess 的属性值 @choosevideosuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tempFilePath | string | 是 | - | - | 选定视频的临时文件路径 |\n| duration | number | 是 | - | - | 选定视频的时间长度 |\n| size | number | 是 | - | - | 选定视频的数据量大小 |\n| height | number | 是 | - | - | 返回选定视频的长 |\n| width | number | 是 | - | - | 返回选定视频的宽 |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### chooseVideo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/video?id=choosevideo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.chooseVideo)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/choose-video/choose-video.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/choose-video/choose-video\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n import { ItemType } from '@/components/enum-data/enum-data';\n export default {\n data() {\n return {\n title: \"chooseVideo\",\n src: \"\",\n sourceTypeItemTypes: [{ \"value\": 0, \"name\": \"从相册中选择视频\" }, { \"value\": 1, \"name\": \"拍摄视频\" }, { \"value\": 2, \"name\": \"从相册中选择视频或拍摄视频\" }] as ItemType[],\n sourceTypeItems: [[\"album\"], [\"camera\"], [\"album\", \"camera\"]],\n cameraItemTypes: [{ \"value\": 0, \"name\": \"后置摄像头\" }, { \"value\": 1, \"name\": \"前置摄像头\" }] as ItemType[],\n cameraItems: [\"back\", \"front\"],\n sourceType: [\"album\", \"camera\"],\n compressed: true,\n maxDuration: 60,\n camera: \"back\",\n videoInfo: \"\"\n }\n },\n methods: {\n chooseVideo() {\n uni.chooseVideo({\n sourceType: this.sourceType,\n // #ifdef APP\n compressed: this.compressed,\n // #endif\n maxDuration: this.maxDuration,\n camera: this.camera,\n success: (res) => {\n console.log(\"chooseVideo success\", JSON.stringify(res));\n this.src = res.tempFilePath;\n this.videoInfo = `视频长度: ${res.duration}s\\n视频大小: ${Math.ceil(res.size / 1024)}KB\\n视频宽度: ${res.width}\\n视频高度: ${res.height}\\n`;\n },\n fail: (err) => {\n uni.showModal({\n title: \"选择视频失败\",\n content: JSON.stringify(err),\n showCancel: false\n });\n }\n });\n },\n onSourceTypeChange(value : number) {\n this.sourceType = this.sourceTypeItems[value];\n },\n onCompressedChange(value : boolean) {\n this.compressed = value;\n },\n onMaxDurationConfirm(value : number) {\n this.maxDuration = value;\n },\n onCameraChange(value : number) {\n this.camera = this.cameraItems[value];\n }\n }\n }\n\n```\n:::"},"saveVideoToPhotosAlbum":{"name":"## uni.saveVideoToPhotosAlbum(options) @savevideotophotosalbum","description":"保存视频到系统相册","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SaveVideoToPhotosAlbumOptions](#savevideotophotosalbumoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.VideoURIString](/uts/data-type.md#ide-string) | 是 | - | - | 视频文件路径,可以是临时文件路径也可以是永久文件路径 |\n@| success | (callback: SaveVideoToPhotosAlbumSuccess) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### saveVideoToPhotosAlbum 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.18 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/video?id=savevideotophotosalbum)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.saveVideoToPhotosAlbum)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/save-video-to-photos-album/save-video-to-photos-album.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"getVideoInfo":{"name":"## uni.getVideoInfo(options) @getvideoinfo","description":"获取视频详细信息","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetVideoInfoOptions](#getvideoinfooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| src | [string.VideoURIString](/uts/data-type.md#ide-string) | 是 | - | - | 视频文件路径,可以是临时文件路径也可以是永久文件路径 |\n@| success | (callback: [GetVideoInfoSuccess](#getvideoinfosuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetVideoInfoSuccess 的属性值 @getvideoinfosuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| duration | number | 是 | - | - | 视频长度 |\n| size | number | 是 | - | - | 视频大小,单位 kB |\n| height | number | 是 | - | - | 视频的长,单位 px |\n| width | number | 是 | - | - | 视频的宽,单位 px |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### getVideoInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 4.18 | - |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/video?id=getvideoinfo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.getVideoInfo)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-video-info/get-video-info.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-video-info/get-video-info\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: \"getVideoInfo\",\n absoluteVideoPath: \"\",\n absoluteVideoInfo: \"\",\n // 自动化测试\n videoInfoForTest: null as UTSJSONObject | null\n }\n },\n methods: {\n chooseVideo() {\n uni.chooseVideo({\n compressed: false,\n success: (res) => {\n this.absoluteVideoPath = res.tempFilePath;\n uni.getVideoInfo({\n src: res.tempFilePath,\n success: (_res) => {\n console.log(\"getVideoInfo success\", JSON.stringify(res));\n this.absoluteVideoInfo = `视频画面方向: ${_res.orientation}\\n视频格式: ${_res.type}\\n视频长度: ${_res.duration}s\\n视频大小: ${_res.size}KB\\n视频宽度: ${_res.width}\\n视频高度: ${_res.height}\\n视频帧率: ${_res.fps}fps\\n视频码率: ${_res.bitrate}kbps`;\n },\n fail: (err) => {\n uni.showModal({\n title: \"获取视频信息失败\",\n content: JSON.stringify(err),\n showCancel: false\n });\n }\n });\n }\n });\n },\n testGetVideoInfo() {\n uni.getVideoInfo({\n src: '/static/test-video/10second-demo.mp4',\n success: (res) => {\n this.videoInfoForTest = {\n \"orientation\": res.orientation,\n \"type\": res.type,\n \"duration\": res.duration.toInt(),\n \"size\": res.size,\n \"width\": res.width,\n \"height\": res.height,\n \"fps\": res.fps,\n \"bitrate\": res.bitrate\n };\n },\n fail: (_) => {\n this.videoInfoForTest = null;\n }\n });\n }\n }\n }\n\n```\n:::"},"compressVideo":{"name":"## uni.compressVideo(options) @compressvideo","description":"压缩视频","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [CompressVideoOptions](#compressvideooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| src | [string.VideoURIString](/uts/data-type.md#ide-string) | 是 | - | - | 视频文件路径,可以是临时文件路径也可以是永久文件路径 |\n@| quality | string \\| null | 否 | - | - | 压缩质量
- low: 低
- medium: 中
- high: 高 |\n@| resolution | number \\| null | 否 | - | - | 相对于原视频的分辨率比例,取值范围(0, 1\\] |\n@| success | (callback: [CompressVideoSuccess](#compressvideosuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (callback: [IMediaError](#imediaerror-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (callback: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### CompressVideoSuccess 的属性值 @compressvideosuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tempFilePath | string | 是 | - | - | 压缩后的临时文件地址 |\n| size | number | 是 | - | - | 压缩后的大小,单位 kB |\n\n##### IMediaError 的属性值 @imediaerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1101001 \\| 1101002 \\| 1101003 \\| 1101004 \\| 1101005 \\| 1101006 \\| 1101007 \\| 1101008 \\| 1101009 \\| 1101010 | 是 | - | - | 错误码
- 1101001 用户取消
- 1101002 urls至少包含一张图片地址
- 1101003 文件不存在
- 1101004 图片加载失败
- 1101005 未获取权限
- 1101006 图片或视频保存失败
- 1101007 图片裁剪失败
- 1101008 拍照或录像失败
- 1101009 图片压缩失败
- 1101010 其他错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### compressVideo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 4.18 | - |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/video?id=compressvideo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.compressVideo)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/compress-video/compress-video.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"createInnerAudioContext":{"name":"## uni.createInnerAudioContext() @createinneraudiocontext","description":"创建并返回 audio 上下文 audioContext 对象
","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [InnerAudioContext](#inneraudiocontext-values) |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| duration | number | 是 | - | - | 当前音频的长度(单位:s),只有在当前有合法的 src 时返回 |\n@| currentTime | number | 是 | - | - | 当前音频的播放位置(单位:s),只有在当前有合法的 src 时返回 |\n@| paused | boolean | 是 | - | - | 当前是是否暂停或停止状态,true 表示暂停或停止,false 表示正在播放 |\n@| src | string | 是 | - | - | 音频的数据链接,用于直接播放。 |\n@| startTime | number | 是 | - | - | 音频开始播放的位置(单位:s) |\n@| buffered | number | 是 | - | - | 音频缓冲的时间点,仅保证当前播放时间点到此时间点内容已缓冲 |\n@| autoplay | boolean | 是 | - | - | 是否自动开始播放,默认 false |\n@| loop | boolean | 是 | - | - | 是否循环播放,默认 false |\n@| obeyMuteSwitch | boolean | 是 | - | - | 是否遵循系统静音开关,当此参数为 false 时,即使用户打开了静音开关,也能继续发出声音,默认值 true |\n@| volume | number | 是 | - | - | 音量。范围 0~1。 |\n@| playbackRate | number | 否 | - | - | 播放的倍率。可取值: 0.5/0.8/1.0/1.25/1.5/2.0,默认值为1.0。(仅 App 支持) |\n#### InnerAudioContext 的方法 @inneraudiocontext-values \n\n#### pause() @pause\n暂停\n\n\n##### pause 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### stop() @stop\n停止\n\n\n##### stop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### play() @play\n播放\n\n\n##### play 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### seek(position) @seek\n跳转到指定位置,单位 s\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| position | number | 是 | - | - | - | \n\n\n##### seek 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### destroy() @destroy\n销毁当前实例\n\n\n##### destroy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onCanplay(callback) @oncanplay\n音频进入可以播放状态,但不保证后面可以流畅播放\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onCanplay 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onPlay(callback) @onplay\n音频播放事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onPlay 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onPause(callback) @onpause\n音频暂停事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onPause 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onStop(callback) @onstop\n音频停止事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onStop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onEnded(callback) @onended\n音频自然播放结束事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onEnded 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onTimeUpdate(callback) @ontimeupdate\n音频播放进度更新事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onTimeUpdate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onError(callback) @onerror\n音频播放错误事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onError 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onWaiting(callback) @onwaiting\n音频加载中事件,当音频因为数据不足,需要停下来加载时会触发\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onWaiting 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onSeeking(callback) @onseeking\n音频进行 seek 操作事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onSeeking 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onSeeked(callback) @onseeked\n音频完成 seek 操作事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onSeeked 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offCanplay(callback) @offcanplay\n取消监听 onCanplay 事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### offCanplay 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offPlay(callback) @offplay\n取消监听 onPlay 事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### offPlay 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offPause(callback) @offpause\n取消监听 onPause 事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### offPause 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offStop(callback) @offstop\n取消监听 onStop 事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### offStop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offEnded(callback) @offended\n取消监听 onEnded 事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### offEnded 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offTimeUpdate(callback) @offtimeupdate\n取消监听 onTimeUpdate 事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### offTimeUpdate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offError(callback) @offerror\n取消监听 onWaiting 事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### offError 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offWaiting(callback) @offwaiting\n取消监听 onWaiting 事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### offWaiting 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offSeeking(callback) @offseeking\n取消监听 onSeeking 事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### offSeeking 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offSeeked(callback) @offseeked\n取消监听 onSeeked 事件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### offSeeked 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### createInnerAudioContext 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/api/media/audio-context.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.media.createInnerAudioContext)\n"},"getLocation":{"name":"## uni.getLocation(options) @getlocation","description":"获取当前的地理位置、速度","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetLocationOptions](#getlocationoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| type | \"wgs84\" \\| \"gcj02\" | 否 | wgs84 | - | 默认为 wgs84 返回 gps 坐标,gcj02 返回可用于uni.openLocation的坐标,web端需配置定位 SDK 信息才可支持 gcj02 |\n@| altitude | boolean \\| null | 否 | false | - | 传入 true 会返回高度信息,由于获取高度需要较高精确度,会减慢接口返回速度 |\n@| geocode | boolean \\| null | 否 | false | - | 传入 true 会解析地址 |\n@| highAccuracyExpireTime | number \\| null | 否 | 3000 | - | 高精度定位超时时间(ms),指定时间内返回最高精度,该值3000ms以上高精度定位才有效果 |\n@| isHighAccuracy | boolean \\| null | 否 | false | - | 开启高精度定位 |\n@| success | (result: [GetLocationSuccess](#getlocationsuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [IGetLocationFail](#igetlocationfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetLocationSuccess 的属性值 @getlocationsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| latitude | number | 是 | 0 | - | 纬度,浮点数,范围为-90~90,负数表示南纬 |\n| longitude | number | 是 | 0 | - | 经度,范围为-180~180,负数表示西经 |\n| speed | number | 是 | 0 | - | 速度,浮点数,单位m/s |\n| accuracy | number | 是 | - | - | 位置的精确度 |\n| altitude | number | 是 | 0 | - | 高度,单位 m |\n| verticalAccuracy | number | 是 | 0 | - | 垂直精度,单位 m(Android 无法获取,返回 0) |\n| horizontalAccuracy | number | 是 | 0 | - | 水平精度,单位 m |\n| address | any \\| null | 否 | null | - | 地址信息 |\n\n##### IGetLocationFail 的属性值 @igetlocationfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1505004 \\| 1505005 \\| 1505021 \\| 1505022 \\| 1505023 \\| 1505024 \\| 1505025 \\| 1505026 | 是 | - | - | 错误码
- 1505004 缺失权限
- 1505005 缺失高精度权限授权(iOS特有)
- 1505021 超时
- 1505022 不支持的定位类型
- 1505023 不支持逆地理编码
- 1505024 没有找到具体的定位引擎,请定位开关是否已打开
- 1505025 逆地理编码捕获失败
- 1505026 捕获定位失败 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### getLocation 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/location/location?id=getlocation)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.location.getLocation)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-location/get-location.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/get-location/get-location\n>Template\n```vue\n\n\n\n```\n>Script\n```uts\n\n type ItemType = {\n value : 'wgs84' | 'gcj02',\n name : string,\n }\n export default {\n data() {\n return {\n title: 'get-location',\n altitudeSelect: false,\n isHighAccuracySelect: false,\n geocodeSelect: false,\n exeRet: '',\n items: [\n {\n value: 'wgs84',\n name: 'wgs84'\n },\n {\n value: 'gcj02',\n name: 'gcj02'\n }\n ] as ItemType[],\n current: 0,\n }\n },\n methods: {\n altitudeChange: function (e : UniSwitchChangeEvent) {\n this.altitudeSelect = e.detail.value\n },\n geocodeChange: function (e : UniSwitchChangeEvent) {\n this.geocodeSelect = e.detail.value\n },\n highAccuracySelectChange: function (e : UniSwitchChangeEvent) {\n this.isHighAccuracySelect = e.detail.value\n },\n radioChange(e : UniRadioGroupChangeEvent) {\n for (let i = 0; i < this.items.length; i++) {\n if (this.items[i].value === e.detail.value) {\n this.current = i;\n break;\n }\n }\n },\n getLocationTap: function () {\n uni.showLoading({\n title: '定位中'\n })\n uni.getLocation(({\n type: this.items[this.current].value,\n altitude: this.altitudeSelect,\n isHighAccuracy: this.isHighAccuracySelect,\n geocode: this.geocodeSelect,\n success: (res : any) => {\n uni.hideLoading()\n console.log(res);\n this.exeRet = JSON.stringify(res)\n },\n fail: (res : any) => {\n uni.hideLoading()\n console.log(res);\n this.exeRet = JSON.stringify(res)\n },\n complete: (res : any) => {\n uni.hideLoading()\n console.log(res);\n this.exeRet = JSON.stringify(res)\n }\n }));\n\n\n }\n\n }\n }\n\n```\n:::"},"openLocation":{"name":"## uni.openLocation(options) @openlocation","description":"使用地图查看位置
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [OpenLocationOptions](#openlocationoptions-values) | 是 | - | - | uni.openLocation |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| latitude | number | 是 | - | - | 纬度,范围为-90~90,负数表示南纬 |\n@| longitude | number | 是 | - | - | 经度,范围为-180~180,负数表示西经 |\n@| scale | number | 否 | - | - | 缩放比例,范围5~18,默认为18 |\n@| name | string | 否 | - | - | 位置名称 |\n@| address | string | 否 | - | - | 地址的详细说明 |\n@| success | (res: OpenLocationSuccess) => void | 否 | - | - | uni.openLocation成功回调函数定义 |\n@| fail | (res: [IOpenLocationError](#iopenlocationerror-values)) => void | 否 | - | - | uni.openLocation失败回调函数定义 |\n@| complete | (res: any) => void | 否 | - | - | uni.openLocation完成回调函数定义 | \n\n##### IOpenLocationError 的属性值 @iopenlocationerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### openLocation 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/api/location/open-location.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.location.openLocation)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/open-location/open-location.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/open-location/open-location\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\ttitle: 'openLocation'\n\t\t\t}\n\t\t},\n\t\tmethods: {\n\t\t\topenLocation: function (e) {\n\t\t\t\tconsole.log(e)\n\t\t\t\tvar value = e.detail.value\n\t\t\t\tuni.openLocation({\n\t\t\t\t\tlongitude: Number(value.longitude),\n\t\t\t\t\tlatitude: Number(value.latitude),\n\t\t\t\t\tname: value.name,\n\t\t\t\t\taddress: value.address\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\n```\n:::"},"chooseLocation":{"name":"## uni.chooseLocation(options) @chooselocation","description":"打开地图选择位置。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ChooseLocationOptions](#chooselocationoptions-values) | 是 | - | - | uni.chooseLocation |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| latitude | number | 否 | - | - | 目标地纬度 |\n@| longitude | number | 否 | - | - | 目标地经度 |\n@| keyword | string | 否 | - | - | 搜索关键字 |\n@| success | (res: [ChooseLocationSuccess](#chooselocationsuccess-values)) => void | 否 | - | - | uni.chooseLocation成功回调函数定义 |\n@| fail | (res: [IChooseLocationError](#ichooselocationerror-values)) => void | 否 | - | - | uni.chooseLocation失败回调函数定义 |\n@| complete | (res: any) => void | 否 | - | - | uni.chooseLocation完成回调函数定义 | \n\n##### ChooseLocationSuccess 的属性值 @chooselocationsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| name | string | 是 | - | - | 位置名称 |\n| address | string | 是 | - | - | 详细地址 |\n| latitude | number | 是 | - | - | 纬度,浮点数,范围为-90~90,负数表示南纬 |\n| longitude | number | 是 | - | - | 经度,范围为-180~180,负数表示西经 |\n\n##### IChooseLocationError 的属性值 @ichooselocationerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | - |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### chooseLocation 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [chooseLocation](https://doc.dcloud.net.cn/uni-app-x/api/get-location.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.location.chooseLocation)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/choose-location/choose-location.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/choose-location/choose-location\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n\tfunction formatLocation(longitude, latitude) {\n\t\tif (typeof longitude === 'string' && typeof latitude === 'string') {\n\t\t\tlongitude = parseFloat(longitude)\n\t\t\tlatitude = parseFloat(latitude)\n\t\t}\n\t\tlongitude = longitude.toFixed(2)\n\t\tlatitude = latitude.toFixed(2)\n\t\treturn {\n\t\t\tlongitude: longitude.toString().split('.'),\n\t\t\tlatitude: latitude.toString().split('.')\n\t\t}\n\t}\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\ttitle: 'chooseLocation',\n\t\t\t\thasLocation: false,\n\t\t\t\tlocation: {},\n\t\t\t\tlocationAddress: ''\n\t\t\t}\n\t\t},\n\t\tmethods: {\n\t\t\tchooseLocation: function () {\n\t\t\t\tuni.chooseLocation({\n\t\t\t\t\tsuccess: (res) => {\n console.log(res,123)\n\t\t\t\t\t\tthis.hasLocation = true,\n\t\t\t\t\t\tthis.location = formatLocation(res.longitude, res.latitude),\n\t\t\t\t\t\tthis.locationAddress = res.address\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t},\n\t\t\tclear: function () {\n\t\t\t\tthis.hasLocation = false\n\t\t\t}\n\t\t}\n\t}\n\n```\n:::"},"getStorageInfo":{"name":"## uni.getStorageInfo(options) @getstorageinfo","description":"uni.getStorageInfo函数定义
异步获取当前 storage 的相关信息。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetStorageInfoOptions](#getstorageinfooptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [GetStorageInfoSuccess](#getstorageinfosuccess-values)) => void \\| null | 否 | - | - | uni.getStorageInfo成功回调函数定义 |\n@| fail | (res: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | uni.getStorageInfo失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.getStorageInfo完成回调函数定义 | \n\n##### GetStorageInfoSuccess 的属性值 @getstorageinfosuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| keys | Array\\ | 是 | - | - | 当前 storage 中所有的 key |\n| currentSize | number | 是 | - | - | 当前占用的空间大小, 单位:kb |\n| limitSize | number | 是 | - | - | 限制的空间大小, 单位:kb |\n","returnValue":"","compatibility":"### getStorageInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#getstorageinfo)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.getStorageInfo)\n"},"getStorageInfoSync":{"name":"## uni.getStorageInfoSync() @getstorageinfosync","description":"uni.getStorageInfoSync函数定义
同步获取当前 storage 的相关信息。

","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **GetStorageInfoSuccess** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| keys | Array\\ | 是 | - | - | 当前 storage 中所有的 key |\n@| currentSize | number | 是 | - | - | 当前占用的空间大小, 单位:kb |\n@| limitSize | number | 是 | - | - | 限制的空间大小, 单位:kb | \n","compatibility":"### getStorageInfoSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#getstorageinfosync)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.getStorageInfoSync)\n"},"getStorage":{"name":"## uni.getStorage(options) @getstorage","description":"uni.getStorage函数定义
从本地存储中异步获取指定 key 对应的内容。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetStorageOptions](#getstorageoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| key | string | 是 | - | - | 本地存储中的指定的 key |\n@| success | (res: [GetStorageSuccess](#getstoragesuccess-values)) => void \\| null | 否 | - | - | uni.getStorage成功回调函数定义 |\n@| fail | (res: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | uni.getStorage失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.getStorage完成回调函数定义 | \n\n##### GetStorageSuccess 的属性值 @getstoragesuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | any \\| null | 否 | - | - | key 对应的内容 |\n","returnValue":"","compatibility":"### getStorage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#getstorage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.getStorage)\n"},"getStorageSync":{"name":"## uni.getStorageSync(key) @getstoragesync","description":"uni.getStorageSync函数定义
从本地存储中同步获取指定 key 对应的内容。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 本地存储中的指定的 key | \n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| any \\| null | 否 |\n \n","compatibility":"### getStorageSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#getstoragesync)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.getStorageSync)\n"},"setStorage":{"name":"## uni.setStorage(options) @setstorage","description":"uni.setStorage函数定义
将数据存储在本地storage存储中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个异步接口。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **SetStorageOptions** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| key | string | 是 | - | - | 本地存储中的指定的 key |\n@| data | any | 是 | - | - | 需要存储的内容,只支持能通过 JSON.stringify 序列化的对象 |\n@| success | (res: SetStorageSuccess) => void \\| null | 否 | - | - | uni.setStorage成功回调函数定义 |\n@| fail | (res: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | uni.setStorage失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.setStorage完成回调函数定义 | \n","returnValue":"","compatibility":"### setStorage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#setstorage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.setStorage)\n"},"setStorageSync":{"name":"## uni.setStorageSync(key, data) @setstoragesync","description":"uni.setStorageSync函数定义
将 data 存储在本地storage存储中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个同步接口。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 本地storage存储中的指定的 key |\n| data | any | 是 | - | - | 需要存储的内容,只支持能通过 JSON.stringify 序列化的对象 | \n","returnValue":"","compatibility":"### setStorageSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#setstoragesync)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.setStorageSync)\n"},"removeStorage":{"name":"## uni.removeStorage(options) @removestorage","description":"uni.removeStorage函数定义
从本地存储中异步移除指定 key。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **RemoveStorageOptions** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| key | string | 是 | - | - | 本地存储中的指定的 key |\n@| success | (res: RemoveStorageSuccess) => void \\| null | 否 | - | - | uni.removeStorage成功回调函数定义 |\n@| fail | (res: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | uni.removeStorage失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.removeStorage完成回调函数定义 | \n","returnValue":"","compatibility":"### removeStorage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](hhttps://uniapp.dcloud.net.cn/api/storage/storage.html#removestorage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.removeStorage)\n"},"removeStorageSync":{"name":"## uni.removeStorageSync(key) @removestoragesync","description":"uni.removeStorageSync函数定义
从本地存储中同步移除指定 key。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 本地存储中的指定的 key | \n","returnValue":"","compatibility":"### removeStorageSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#removestoragesync)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.removeStorageSync)\n"},"clearStorage":{"name":"## uni.clearStorage(option?) @clearstorage","description":"uni.clearStorage函数定义
清除本地数据存储。
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | **ClearStorageOptions** \\| null | 否 | - | - | uni.removeStorage参数定义 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: ClearStorageSuccess) => void \\| null | 否 | - | - | uni.clearStorage 成功回调函数定义 |\n@| fail | (res: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | uni.clearStorage 失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | uni.clearStorage 完成回调函数定义 | \n","returnValue":"","compatibility":"### clearStorage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#clearstorage)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.clearStorage)\n"},"clearStorageSync":{"name":"## uni.clearStorageSync() @clearstoragesync","description":"uni.clearStorageSync函数定义
清除本地数据存储。
","param":"","returnValue":"","compatibility":"### clearStorageSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/storage/storage.html#clearstoragesync)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.storage.storage.clearStorageSync)\n"},"storage":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/storage/storage.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/storage/storage\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'get/set/clearStorage',\n key: '',\n data: '' as any,\n apiGetData: '' as any | null,\n storageInfo: '',\n }\n },\n methods: {\n getStorageInfo() {\n uni.getStorageInfo({\n success: (res) => {\n this.apiGetData = res\n this.storageInfo = JSON.stringify(res)\n },\n })\n },\n getStorageInfoSync() {\n try {\n const res = uni.getStorageInfoSync()\n this.apiGetData = res\n this.storageInfo = JSON.stringify(res)\n } catch (e) {\n // error\n console.log(e)\n }\n },\n jsonLikeMock() {\n this.key = 'key_' + Math.random()\n this.data = JSON.stringify({\n name: \"james\",\n age: 12,\n from: \"american\"\n });\n\n },\n longLikeMock() {\n this.key = 'key_' + Math.random()\n this.data = \"1234567890\"\n },\n floatLikeMock() {\n this.key = 'key_' + Math.random()\n this.data = \"321456.1234567890\"\n },\n negativeLikeMock() {\n this.key = 'key_' + Math.random()\n this.data = \"-321456\"\n },\n strMock() {\n this.key = 'key_' + Math.random()\n this.data = '测试字符串数据,长度为16个字符'\n },\n complexMock() {\n this.key = 'key_' + Math.random()\n let jsonObj = {\n name: '张三',\n age: 12,\n classMate: [\n {\n id: 1001,\n name: '李四',\n },\n {\n id: 1002,\n name: 'jack ma',\n },\n ],\n }\n this.data = jsonObj\n },\n numberMock() {\n this.key = 'key_' + Math.random()\n this.data = 10011\n },\n floatMock() {\n this.key = 'key_' + Math.random()\n this.data = 3.1415926535893384626\n },\n\n keyChange: function (e : InputEvent) {\n this.key = e.detail.value\n },\n dataChange: function (e : InputEvent) {\n this.data = e.detail.value\n },\n getStorage: function () {\n var key = this.key\n if (key.length == 0) {\n uni.showModal({\n title: '读取数据失败',\n content: 'key 不能为空',\n showCancel: false,\n })\n } else {\n let that = this\n uni.getStorage({\n key: key,\n success: (res) => {\n\n that.apiGetData = res.data\n let desc : string = typeof this.apiGetData\n if (\"object\" == desc) {\n desc = desc + \": \" + JSON.stringify(this.apiGetData)\n } else {\n desc = desc + \": \" + this.apiGetData\n }\n\n uni.showModal({\n title: '读取数据成功',\n content: desc,\n showCancel: false,\n })\n },\n fail: () => {\n uni.showModal({\n title: '读取数据失败',\n content: '找不到 key 对应的数据',\n showCancel: false,\n })\n },\n })\n }\n },\n getStorageSync: function () {\n var key = this.key\n if (key.length == 0) {\n uni.showModal({\n title: '读取数据失败',\n content: 'key 不能为空',\n showCancel: false,\n })\n } else {\n this.apiGetData = uni.getStorageSync(key)\n\n let desc : string = typeof this.apiGetData\n if (\"object\" == desc) {\n desc = desc + \": \" + JSON.stringify(this.apiGetData)\n } else {\n desc = desc + \": \" + this.apiGetData\n }\n\n uni.showModal({\n title: '读取数据成功',\n content: desc,\n showCancel: false,\n })\n }\n },\n setStorage: function () {\n var key = this.key\n var data = this.data\n if (key.length == 0) {\n uni.showModal({\n title: '保存数据失败',\n content: 'key 不能为空',\n showCancel: false,\n })\n } else {\n uni.setStorage({\n key: key,\n data: data,\n success: () => {\n uni.showModal({\n title: '存储数据成功',\n showCancel: false,\n })\n },\n fail: () => {\n uni.showModal({\n title: '储存数据失败!',\n showCancel: false,\n })\n },\n })\n }\n },\n setStorageSync: function () {\n var key = this.key\n var data = this.data\n if (key.length == 0) {\n uni.showModal({\n title: '保存数据失败',\n content: 'key 不能为空',\n showCancel: false,\n })\n } else {\n uni.setStorageSync(key, data)\n uni.showModal({\n title: '存储数据成功',\n showCancel: false,\n })\n }\n },\n removeStorage: function () {\n uni.removeStorage({\n key: this.key,\n success: () => {\n uni.showModal({\n title: '移除数据成功',\n showCancel: false,\n })\n },\n fail: () => {\n uni.showModal({\n title: '移除数据失败',\n showCancel: false,\n })\n },\n })\n },\n removeStorageSync: function () {\n uni.removeStorageSync(this.key)\n uni.showModal({\n title: '移除数据成功',\n showCancel: false,\n })\n },\n clearStorage: function () {\n this.key = ''\n this.data = ''\n uni.clearStorage({\n success: function (_) {\n uni.showModal({\n title: '清除数据成功',\n showCancel: false,\n })\n },\n fail: function (_) {\n uni.showModal({\n title: '清除数据失败',\n showCancel: false,\n })\n },\n })\n },\n clearStorageSync: function () {\n this.key = ''\n this.data = ''\n uni.clearStorageSync()\n uni.showModal({\n title: '清除数据成功',\n content: ' ',\n showCancel: false,\n })\n },\n },\n }\n\n```\n:::"},"getFileSystemManager":{"name":"## uni.getFileSystemManager() @getfilesystemmanager","description":"获取文件管理器","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [FileSystemManager](#filesystemmanager-values) |\n\n#### FileSystemManager 的方法 @filesystemmanager-values \n\n#### readFile(options) @readfile\n读取本地文件内容\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ReadFileOptions](#readfileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| encoding | \"base64\" \\| \"utf-8\" | 是 | - | - | base64 / utf-8 |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 文件路径,支持相对地址和绝对地址,app-android平台支持代码包文件目录 |\n@| success | (res: [ReadFileSuccessResult](#readfilesuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 通用的错误返回结果回调 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 通用的结束返回结果回调 | \n\n##### ReadFileSuccessResult 的属性值 @readfilesuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | string | 是 | - | - | - |\n\n##### IFileSystemManagerFail 的属性值 @ifilesystemmanagerfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1200002 \\| 1300002 \\| 1300013 \\| 1300021 \\| 1300022 \\| 1300066 \\| 1301003 \\| 1301005 \\| 1300201 \\| 1300202 \\| 1301111 \\| 1302003 \\| 1300009 | 是 | - | - | 错误码
- 1200002 类型错误。仅支持 base64 / utf-8
- 1300002 未找到文件
- 1300013 无权限
- 1300021 是目录
- 1300022 参数无效
- 1300066 目录非空
- 1301003 对目录的非法操作
- 1301005 文件已存在
- 1300201 系统错误
- 1300202 超出文件存储限制的最大尺寸
- 1301111 brotli解压失败
- 1302003 标志无效
- 1300009 文件描述符错误 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n\n##### readFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### readFileSync(filePath, encoding?) @readfilesync\nFileSystemManager.readFile 的同步版本参数\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filePath | string | 是 | - | - | 文件路径,支持相对地址和绝对地址,app-android平台支持代码包文件目录 |\n| encoding | string \\| null | 否 | - | - | base64 / utf-8 | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n\n##### readFileSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### writeFile(options) @writefile\n写文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [WriteFileOptions](#writefileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 文件路径,只支持绝对地址 |\n@| encoding | \"ascii\" \\| \"base64\" \\| \"utf-8\" | 是 | - | - | 指定写入文件的字符编码
支持:ascii base64 utf-8 |\n@| data | string | 是 | - | - | 写入的文本内容 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 通用的正确返回结果回调 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### FileManagerSuccessResult 的属性值 @filemanagersuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n\n\n##### writeFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### writeFileSync(filePath, data, encoding) @writefilesync\nFileSystemManager.writeFile 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filePath | string | 是 | - | - | 文件路径,只支持绝对地址 |\n| data | string | 是 | - | - | 写入的文本内容 |\n| encoding | string | 是 | - | - | 指定写入文件的字符编码,支持:ascii base64 utf-8 | \n\n\n##### writeFileSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### unlink(options) @unlink\n删除文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **UnLinkOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 文件路径,只支持绝对地址 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### unlink 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### unlinkSync(filePath) @unlinksync\nFileSystemManager.unlink 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filePath | string | 是 | - | - | 文件路径,只支持绝对地址 | \n\n\n##### unlinkSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### mkdir(options) @mkdir\n创建目录\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MkDirOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| dirPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 创建的目录路径 (本地路径) |\n@| recursive | boolean | 是 | - | - | 是否在递归创建该目录的上级目录后再创建该目录。如果对应的上级目录已经存在,则不创建该上级目录。如 dirPath 为 a/b/c/d 且 recursive 为 true,将创建 a 目录,再在 a 目录下创建 b 目录,以此类推直至创建 a/b/c 目录下的 d 目录。 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### mkdir 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### mkdirSync(dirPath, recursive) @mkdirsync\nFileSystemManager.mkdir 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| dirPath | string | 是 | - | - | 创建的目录路径 (本地路径) |\n| recursive | boolean | 是 | - | - | 是否在递归创建该目录的上级目录后再创建该目录。如果对应的上级目录已经存在,则不创建该上级目录。如 dirPath 为 a/b/c/d 且 recursive 为 true,将创建 a 目录,再在 a 目录下创建 b 目录,以此类推直至创建 a/b/c 目录下的 d 目录。 | \n\n\n##### mkdirSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### rmdir(options) @rmdir\n删除目录\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **RmDirOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| dirPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要删除的目录路径 (本地路径) |\n@| recursive | boolean | 是 | - | - | 是否递归删除目录。如果为 true,则删除该目录和该目录下的所有子目录以及文件。 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### rmdir 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### rmdirSync(dirPath, recursive) @rmdirsync\nFileSystemManager.rmdir 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| dirPath | string | 是 | - | - | 要删除的目录路径 (本地路径) |\n| recursive | boolean | 是 | - | - | 是否递归删除目录。如果为 true,则删除该目录和该目录下的所有子目录以及文件。 | \n\n\n##### rmdirSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### readdir(options) @readdir\n读取目录内文件列表\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ReadDirOptions](#readdiroptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| dirPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要读取的目录路径 (本地路径) |\n@| success | (res: [ReadDirSuccessResult](#readdirsuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ReadDirSuccessResult 的属性值 @readdirsuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| files | Array\\ | 是 | - | - | - |\n\n\n##### readdir 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### readdirSync(dirPath) @readdirsync\nFileSystemManager.readdir 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| dirPath | string | 是 | - | - | 要读取的目录路径 (本地路径) | \n\n##### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Array\\ \\| null | 否 |\n \n\n##### readdirSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### access(options) @access\n判断文件/目录是否存在\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **AccessOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| path | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要判断是否存在的文件/目录路径 (本地路径) |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### access 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### accessSync(path) @accesssync\nFileSystemManager.access 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| path | string | 是 | - | - | 要判断是否存在的文件/目录路径 (本地路径) | \n\n\n##### accessSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### rename(options) @rename\n重命名文件。可以把文件从 oldPath 移动到 newPath\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **RenameOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| oldPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 源文件路径,支持本地路径 |\n@| newPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 新文件路径,支持本地路径 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### rename 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### renameSync(oldPath, newPath) @renamesync\nFileSystemManager.rename 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| oldPath | string | 是 | - | - | 源文件路径,支持本地路径 |\n| newPath | string | 是 | - | - | 新文件路径,支持本地路径 | \n\n\n##### renameSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### copyFile(options) @copyfile\n复制文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **CopyFileOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| srcPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 源文件路径,支持本地路径 |\n@| destPath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 新文件路径,支持本地路径 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### copyFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### copyFileSync(srcPath, destPath) @copyfilesync\nFileSystemManager.copyFile 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| srcPath | string | 是 | - | - | 源文件路径,支持本地路径 |\n| destPath | string | 是 | - | - | 新文件路径,支持本地路径 | \n\n\n##### copyFileSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### getFileInfo(options) @getfileinfo\n获取该本地临时文件 或 本地缓存文件 信息\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetFileInfoOptions](#getfileinfooptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要读取的文件路径 (本地路径) |\n@| digestAlgorithm | \"md5\" \\| \"sha1\" | 是 | - | - | md5 / sha1 |\n@| success | (res: [GetFileInfoSuccessResult](#getfileinfosuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetFileInfoSuccessResult 的属性值 @getfileinfosuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| digest | string | 是 | - | - | - |\n| size | number | 是 | - | - | - |\n| errMsg | string | 是 | - | - | - |\n\n\n##### getFileInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### stat(options) @stat\n获取文件 Stats 对象\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [StatOptions](#statoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| path | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 文件/目录路径 (本地路径) |\n@| recursive | boolean | 是 | - | - | 是否递归获取目录下的每个文件的 Stats 信息 |\n@| success | (res: [StatSuccessResult](#statsuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### StatSuccessResult 的属性值 @statsuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n| stats | Array\\<[FileStats](#filestats-values)\\> | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| path | string | 是 | - | - | - |\n@| stats | [Stats](#stats-values) | 是 | - | - | - |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| mode | number | 是 | - | - | 文件的类型和存取的权限,对应 POSIX stat.st_mode
注意android中,文件类型只包含是否是目录与文件,
另外在android中这里的权限指的是当前进程对文件或者文件夹是否有读,写,执行的权限,
这里没有与 POSIX stat.st_mode对应的组,其他人等相关权限的数据返回,只有所有者的相关权限 |\n@@| size | number | 是 | - | - | 文件大小,单位:B,对应 POSIX stat.st_size |\n@@| lastAccessedTime | number | 是 | - | - | 文件最近一次被存取或被执行的时间,UNIX 时间戳,对应 POSIX stat.st_atime
注意:android中由于系统限制无法获取该数据 |\n@@| lastModifiedTime | number | 是 | - | - | 文件最后一次被修改的时间,UNIX 时间戳,对应 POSIX stat.st_mtime |\n\n##### Stats 的方法 @stats-values \n\n##### isDirectory() @isdirectory\n判断当前文件是否一个目录\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| boolean |\n \n\n###### isDirectory 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### isFile() @isfile\n判断当前文件是否一个普通文件\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| boolean |\n \n\n###### isFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n\n##### stat 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n\n\n#### statSync(path, recursive) @statsync\nFileSystemManager.stat 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| path | string | 是 | - | - | 文件/目录路径 (本地路径) |\n| recursive | boolean | 是 | - | - | 是否递归获取目录下的每个文件的 Stats 信息 | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Array\\<[FileStats](#filestats-values)\\> |\n \n\n##### statSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### appendFile(options) @appendfile\n在文件结尾追加内容\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **AppendFileOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要追加内容的文件路径 (本地路径) |\n@| encoding | \"ascii\" \\| \"base64\" \\| \"utf-8\" | 是 | - | - | 指定写入文件的字符编码
支持:ascii base64 utf-8 |\n@| data | string | 是 | - | - | 要追加的文本 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### appendFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### appendFileSync(filePath, data, encoding) @appendfilesync\nFileSystemManager.appendFile 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filePath | string | 是 | - | - | 要追加内容的文件路径 (本地路径) |\n| data | string | 是 | - | - | 要追加的文本 |\n| encoding | string | 是 | - | - | 指定写入文件的字符编码支持:ascii base64 utf-8 | \n\n\n##### appendFileSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### saveFile(options) @savefile\n保存临时文件到本地。此接口会移动临时文件,因此调用成功后,tempFilePath 将不可用。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [SaveFileOptions](#savefileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| tempFilePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 临时存储文件路径 (本地路径) |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) \\| null | 否 | - | - | 要存储的文件路径 (本地路径) |\n@| success | (res: [SaveFileSuccessResult](#savefilesuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### SaveFileSuccessResult 的属性值 @savefilesuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| savedFilePath | string | 是 | - | - | 存储后的文件路径 (本地路径) |\n\n\n##### saveFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### saveFileSync(tempFilePath, filePath?) @savefilesync\nFileSystemManager.saveFile 的同步版本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tempFilePath | string | 是 | - | - | 临时存储文件路径 (本地路径) |\n| filePath | string \\| null | 否 | - | - | 要存储的文件路径 (本地路径) | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n\n##### saveFileSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### removeSavedFile(options) @removesavedfile\n删除该小程序下已保存的本地缓存文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **RemoveSavedFileOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 需要删除的文件路径 (本地路径) |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### removeSavedFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### unzip(options) @unzip\n解压文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **UnzipFileOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| zipFilePath | string | 是 | - | - | 源文件路径,支持本地路径, 只可以是 zip 压缩文件 |\n@| targetPath | string | 是 | - | - | 目标目录路径, 支持本地路径 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### unzip 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### getSavedFileList(options) @getsavedfilelist\n获取该已保存的本地缓存文件列表\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [GetSavedFileListOptions](#getsavedfilelistoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (res: [GetSavedFileListResult](#getsavedfilelistresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### GetSavedFileListResult 的属性值 @getsavedfilelistresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| fileList | Array\\ | 是 | - | - | - |\n\n\n##### getSavedFileList 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### truncate(options) @truncate\n对文件内容进行截断操作\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **TruncateFileOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要截断的文件路径 (本地路径) |\n@| length | number | 是 | - | - | 截断位置,默认0。如果 length 小于文件长度(字节),则只有前面 length 个字节会保留在文件中,其余内容会被删除;
如果 length 大于文件长度,不做处理 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### truncate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### truncateSync(filePath, length?) @truncatesync\n对文件内容进行截断操作 (truncate 的同步版本)\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filePath | string | 是 | - | - | 要截断的文件路径 (本地路径) |\n| length | number | 否 | - | - | 截断位置,默认0。如果 length 小于文件长度(字节),则只有前面 length 个字节会保留在文件中,其余内容会被删除;如果 length 大于文件长度,不做处理 | \n\n\n##### truncateSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### readCompressedFile(options) @readcompressedfile\n读取指定压缩类型的本地文件内容\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ReadCompressedFileOptions](#readcompressedfileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要读取的文件的路径 (本地用户文件或代码包文件),app-android平台支持代码包文件目录 |\n@| compressionAlgorithm | string | 是 | - | - | 文件压缩类型,目前仅支持 'br'。 |\n@| success | (res: [ReadCompressedFileResult](#readcompressedfileresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### ReadCompressedFileResult 的属性值 @readcompressedfileresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | string | 是 | - | - | - |\n\n\n##### readCompressedFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### readCompressedFileSync(filePath, compressionAlgorithm) @readcompressedfilesync\n同步读取指定压缩类型的本地文件内容\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filePath | string | 是 | - | - | 要读取的文件的路径 (本地用户文件或代码包文件),app-android平台支持代码包文件目录 |\n| compressionAlgorithm | string | 是 | - | - | 文件压缩类型,目前仅支持 'br'。 | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n\n##### readCompressedFileSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### open(options) @open\n打开文件,返回文件描述符\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [OpenFileOptions](#openfileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要追加内容的文件路径 (本地路径) |\n@| flag | \"a\" \\| \"ax\" \\| \"a+\" \\| \"ax+\" \\| \"r\" \\| \"r+\" \\| \"w\" \\| \"wx\" \\| \"w+\" \\| \"wx\" \\| \"wx+\" | 是 | - | - | 文件系统标志,默认值: 'r' |\n@| success | (res: [OpenFileSuccessResult](#openfilesuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### OpenFileSuccessResult 的属性值 @openfilesuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| fd | string | 是 | - | - | - |\n\n\n##### open 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### openSync(options) @opensync\n同步打开文件,返回文件描述符\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **OpenFileSyncOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要追加内容的文件路径 (本地路径) |\n@| flag | \"a\" \\| \"ax\" \\| \"a+\" \\| \"ax+\" \\| \"r\" \\| \"r+\" \\| \"w\" \\| \"wx\" \\| \"w+\" \\| \"wx\" \\| \"wx+\" | 是 | - | - | 文件系统标志,默认值: 'r' | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n\n##### openSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### write(options) @write\n写入文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [WriteOptions](#writeoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 |\n@| data | string | 是 | - | - | 写入的内容 |\n@| encoding | \"ascii\" \\| \"base64\" \\| \"utf-8\" | 是 | - | - | 指定写入文件的字符编码
支持:ascii base64 utf-8 |\n@| success | (res: [WriteResult](#writeresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### WriteResult 的属性值 @writeresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| bytesWritten | number | 是 | - | - | 实际被写入到文件中的字节数(注意,被写入的字节数不一定与被写入的字符串字符数相同) |\n\n\n##### write 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### writeSync(options) @writesync\n同步写入文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **WriteSyncOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 |\n@| data | string | 是 | - | - | 写入的内容 |\n@| encoding | \"ascii\" \\| \"base64\" \\| \"utf-8\" | 是 | - | - | 指定写入文件的字符编码
支持:ascii base64 utf-8 | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [WriteResult](#writeresult-values) |\n \n\n##### writeSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### close(options) @close\n关闭文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **CloseOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 需要被关闭的文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### close 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### closeSync(options) @closesync\n同步关闭文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **CloseSyncOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 需要被关闭的文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 | \n\n\n##### closeSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### fstat(options) @fstat\n获取文件的状态信息\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [FStatOptions](#fstatoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 |\n@| success | (res: [FStatSuccessResult](#fstatsuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### FStatSuccessResult 的属性值 @fstatsuccessresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stats | [Stats](#stats-values) | 是 | - | - | Stats 对象,包含了文件的状态信息 |\n\n\n##### fstat 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### fstatSync(options) @fstatsync\n同步获取文件的状态信息\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **FStatSyncOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [Stats](#stats-values) |\n \n\n##### fstatSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### ftruncate(options) @ftruncate\n对文件内容进行截断操作\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **FTruncateFileOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 |\n@| length | number | 是 | - | - | 截断位置,默认0。如果 length 小于文件长度(字节),则只有前面 length 个字节会保留在文件中,其余内容会被删除;
如果 length 大于文件长度,不做处理 |\n@| success | (res: [FileManagerSuccessResult](#filemanagersuccessresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### ftruncate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### ftruncateSync(options) @ftruncatesync\n同步对文件内容进行截断操作\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **FTruncateFileSyncOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fd | string | 是 | - | - | 文件描述符。fd 通过 FileSystemManager.open 或 FileSystemManager.openSync 接口获得 |\n@| length | number | 是 | - | - | 截断位置,默认0。如果 length 小于文件长度(字节),则只有前面 length 个字节会保留在文件中,其余内容会被删除;
如果 length 大于文件长度,不做处理 | \n\n\n##### ftruncateSync 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n\n#### readZipEntry(options) @readzipentry\n读取压缩包内的文件\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [ReadZipEntryOptions](#readzipentryoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | [string.URIString](/uts/data-type.md#ide-string) | 是 | - | - | 要读取的压缩包的路径 (本地路径),app-android平台支持代码包文件目录 |\n@| encoding | \"ascii\" \\| \"base64\" \\| \"utf-8\" | 是 | - | - | 统一指定读取文件的字符编码,只在 entries 值为\"all\"时有效。
如果 entries 值为\"all\"且不传 encoding,则以 string 格式读取文件的内容 |\n@| entries | Array\\<**EntryItem**\\> \\| null | 否 | - | - | 要读取的压缩包内的文件列表(当不传入时表示读取压缩包内所有文件) |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| path | string | 是 | - | - | 压缩包内文件路径 |\n@@| encoding | \"ascii\" \\| \"base64\" \\| \"base64\" | 是 | - | - | 指定写入文件的字符编码
支持:ascii base64 utf-8 |\n@| success | (res: [EntriesResult](#entriesresult-values)) => void \\| null | 否 | - | - | 接口调用的回调函数 |\n@| fail | (res: [IFileSystemManagerFail](#ifilesystemmanagerfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### EntriesResult 的属性值 @entriesresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| result | Map\\ | 是 | - | - | 文件路径 |\n\n\n##### readZipEntry 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.13 | x |\n\n \n","compatibility":"### getFileSystemManager 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.file.getFileSystemManager)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-file-system-manager/get-file-system-manager.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"getUniverifyManager":{"name":"## uni.getUniverifyManager() @getuniverifymanager","description":"获取一键登录管理对象","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [UniverifyManager](#univerifymanager-values) |\n\n#### UniverifyManager 的方法 @univerifymanager-values \n\n#### preLogin(options) @prelogin\n预登录\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [PreLoginOptions](#preloginoptions-values) | 是 | - | - | 预登录参数 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | () => void | 否 | - | - | - |\n@| fail | (err: [PreLoginFail](#preloginfail-values)) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### PreLoginFail 的属性值 @preloginfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1000 \\| 1001 \\| 1002 \\| 1004 \\| 4001 \\| 30004 \\| 30005 \\| 30006 | 是 | - | - | 1000 当前应用appid尚未开通uni一键登录
1001 应用所有者账号信息异常,请检查账号一键登录服务是否正常
1002 应用所有者账号信息异常,请检查账号余额是否充足
1004 uni一键登录应用不存在
4001 参数异常
30004 其他错误
30005 预登录失败
30006 一键登录失败 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n\n##### preLogin 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.99 | 4.18 |\n\n\n#### login(options) @login\n登录\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [LoginOptions](#loginoptions-values) | 是 | - | - | 登录参数 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| univerifyStyle | **UniverifyStyle** | 否 | - | - | 登录页样式 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| fullScreen | boolean | 否 | - | - | 是否全屏 |\n@@| logoPath | string | 否 | - | - | logo路径 |\n@@| backgroundColor | string | 否 | - | - | 登录页背景色 |\n@@| loginBtnText | string | 否 | - | - | 登录按钮文字 |\n@| success | (res: [LoginSuccess](#loginsuccess-values)) => void | 否 | - | - | - |\n@| fail | (err: [LoginFail](#loginfail-values)) => void | 否 | - | - | - |\n@| complete | (res: any) => void | 否 | - | - | - | \n\n##### LoginSuccess 的属性值 @loginsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| openId | string | 是 | - | - | 登录授权唯一标识 |\n| accessToken | string | 是 | - | - | token |\n\n##### LoginFail 的属性值 @loginfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 1000 \\| 1001 \\| 1002 \\| 1004 \\| 4001 \\| 30004 \\| 30005 \\| 30006 | 是 | - | - | 1000 当前应用appid尚未开通uni一键登录
1001 应用所有者账号信息异常,请检查账号一键登录服务是否正常
1002 应用所有者账号信息异常,请检查账号余额是否充足
1004 uni一键登录应用不存在
4001 参数异常
30004 其他错误
30005 预登录失败
30006 一键登录失败 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n\n##### login 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.99 | 4.18 |\n\n\n#### close() @close\n关闭登录页\n\n\n##### close 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.99 | 4.18 |\n\n\n#### isPreLoginValid() @ispreloginvalid\n预登录是否有效\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| boolean |\n \n\n##### isPreLoginValid 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.99 | 4.18 |\n\n \n","compatibility":"### getUniverifyManager 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.99 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/univerify.html#univerifymanager)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.loginVerify.getUniverifyManager)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/get-univerify-manager/get-univerify-manager.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"getFacialRecognitionMetaInfo":{"name":"## uni.getFacialRecognitionMetaInfo() @getfacialrecognitionmetainfo","description":"获取阿里云实人认证meta info","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n","compatibility":"### getFacialRecognitionMetaInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.loginVerify.facialRecognitionMetaInfo.getFacialRecognitionMetaInfo)\n"},"startFacialRecognitionVerify":{"name":"## uni.startFacialRecognitionVerify(faceStyle) @startfacialrecognitionverify","description":"启动人脸识别","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| faceStyle | [StartFacialRecognitionVerifyOptions](#startfacialrecognitionverifyoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| certifyId | string | 是 | - | - | certifyId 调用实人认证的id |\n@| progressBarColor | string \\| null | 否 | - | - | 活体检测页面的进度条颜色。 |\n@| screenOrientation | \"land\" \\| \"port\" | 否 | \"port\" | | 认证时屏幕方向
- land 横屏
- port 竖屏 |\n@| success | (res: [StartFacialRecognitionVerifySuccess](#startfacialrecognitionverifysuccess-values)) => void \\| null | 否 | - | - | 成功回调 |\n@| fail | (res: [IFacialRecognitionVerifyError](#ifacialrecognitionverifyerror-values)) => void \\| null | 否 | - | - | 失败回调 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 完成回调 | \n\n##### StartFacialRecognitionVerifySuccess 的属性值 @startfacialrecognitionverifysuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | 错误码 |\n| errSubject | string | 是 | - | - | 调用API的名称 |\n| errMsg | string | 是 | - | - | 错误的详细信息 |\n| cause | **SourceError** | 否 | - | - | 错误来源 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| subject | string \\| null | 否 | - | - | 源错误模块名称 |\n@| message | string | 是 | - | - | 源错误描述信息 |\n@| code | number | 是 | - | - | 源错误的错误码 |\n@| name | string | 是 | - | - | - |\n@| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | |\n\n##### IFacialRecognitionVerifyError 的属性值 @ifacialrecognitionverifyerror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 10010 \\| 10012 \\| 10011 \\| 10013 \\| 10020 \\| 10001 \\| 10002 | 是 | - | - | 错误码
- 10001 certifyId 不能为空
- 10002 \"当前设备不支持\"
- 10010 刷脸异常
- 10012 网络异常
- 10011 验证中断
- 10013 刷脸验证失败
- 10020 设备设置时间异常 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### startFacialRecognitionVerify 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.loginVerify.facialRecognitionMetaInfo.startFacialRecognitionVerify)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/facial-recognition-verify/facial-recognition-verify.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"createRewardedVideoAd":{"name":"## uni.createRewardedVideoAd(option) @createrewardedvideoad","description":"创建激励视频广告对象","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| option | **CreateRewardedVideoAdOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| adpid | string | 是 | - | - | 广告位 id |\n@| urlCallback | **UrlCallbackOptions** \\| null | 否 | - | - | 服务器回调透传参数 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| userId | string \\| null | 否 | - | - | 透传到服务器端的userId |\n@@| extra | string \\| null | 否 | - | - | 透传到服务器端的extra,不推荐设置过于复杂的字符串 | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [RewardedVideoAd](#rewardedvideoad-values) |\n\n#### RewardedVideoAd 的方法 @rewardedvideoad-values \n\n#### show() @show\n广告加载成功之后,调用此方法展示广告\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\ |\n \n\n##### show 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### load() @load\n加载广告\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\ |\n \n\n##### load 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### destroy() @destroy\n销毁广告\n\n\n##### destroy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onLoad(callback) @onload\n绑定广告 load 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onLoad 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offLoad(callback) @offload\n解除绑定 load 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### offLoad 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onError(callback) @onerror\n绑定 error 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [IUniAdError](#iuniaderror-values)) => void | 是 | - | - | - | \n\n##### IUniAdError 的属性值 @iuniaderror-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | number | 是 | - | - | 错误码
- -5001 广告位标识adpid为空,请传入有效的adpid
- -5002 无效的广告位标识adpid,请使用正确的adpid
- -5003 广告位未开通广告,请在广告平台申请并确保已审核通过
- -5004 无广告模块,打包时请配置要使用的广告模块
- -5005 广告加载失败,请稍后重试
- -5006 广告已经展示过了,请重新加载
- -5007 广告不可用或已过期,请重新请求
- -5008 广告不可用或已过期,请重新请求
- -5009 广告类型不符,请检查后再试
- -5011 打包或开通的渠道,不支持此类型广告
- -5013 广告播放失败,请重新加载 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n\n\n##### onError 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offError(callback) @offerror\n解除绑定 error 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [IUniAdError](#iuniaderror-values)) => void | 是 | - | - | - | \n\n\n##### offError 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onClose(callback) @onclose\n绑定 close 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [VideoAdClose](#videoadclose-values)) => void | 是 | - | - | - | \n\n##### VideoAdClose 的属性值 @videoadclose-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| isEnded | boolean | 是 | - | - | true标识广告播放完毕或者达到发放奖励的条件 |\n\n\n##### onClose 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### offClose(callback) @offclose\n解除绑定 close 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [VideoAdClose](#videoadclose-values)) => void | 是 | - | - | - | \n\n\n##### offClose 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onAdClicked(callback) @onadclicked\n绑定广告可点击屏幕区域事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: any) => void | 是 | - | - | - | \n\n\n##### onAdClicked 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onVerify(callback) @onverify\n绑定 verify 事件的监听器\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (result: [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md)) => void | 是 | - | - | - | \n\n\n##### onVerify 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### createRewardedVideoAd 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 4.0 | 4.22 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.ad.createRewardedVideoAd)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/rewarded-video-ad/rewarded-video-ad.uvue) \n >\n> 该 API 不支持 Web,请运行 hello uni-app x 到 App 平台体验 \n```uvue\n\n\n\n\n\n\n```"},"requestPayment":{"name":"## uni.requestPayment(options) @requestpayment","description":"请求支付","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [RequestPaymentOptions](#requestpaymentoptions-values) | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| provider | string | 是 | - | - | 支付服务提供商,通过 [uni.getProvider](https://doc.dcloud.net.cn/uni-app-x/api/get-provider.html) 获取,目前支持支付宝支付(alipay),微信支付(wxpay) |\n@| orderInfo | string | 是 | - | - | 订单数据 |\n@| success | (result: [RequestPaymentSuccess](#requestpaymentsuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [IRequestPaymentFail](#irequestpaymentfail-values)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### RequestPaymentSuccess 的属性值 @requestpaymentsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | any \\| null | 否 | - | - | |\n\n##### IRequestPaymentFail 的属性值 @irequestpaymentfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errCode | 700600 \\| 701100 \\| 701110 \\| 700601 \\| 700602 \\| 700603 \\| 700000 \\| 700604 \\| 700800 \\| 700801 | 是 | - | - | 错误码
- 700600 正在处理中,支付结果未知(有可能已经支付成功),请查询商家订单列表中订单的支付状态
- 701100 订单支付失败。
- 701110 重复请求。
- 700601 用户中途取消。
- 700602 网络连接出错。
- 700603 支付结果未知(有可能已经支付成功),请查询商家订单列表中订单的支付状态。
- 700000 其它支付错误。
- 700604 微信没有安装。
- 700800 没有配置对应的URL Scheme。
- 700801 没有配置对应的universal Link。 |\n| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n| errMsg | string | 是 | - | - | - |\n","returnValue":"","compatibility":"### requestPayment 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.02 | 4.18 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/api/plugins/payment.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.payment.requestPayment)\n","example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/request-payment/request-payment.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/request-payment/request-payment\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n\texport type PayItem = { id : string, name : string, provider ?: UniProvider }\r\n\texport default {\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tbtnText: \"支付宝支付\",\r\n\t\t\t\tbtnType: \"primary\",\r\n\t\t\t\torderInfo: \"\",\r\n\t\t\t\terrorCode: 0,\r\n\t\t\t\terrorMsg: \"\",\r\n\t\t\t\tcomplete: false,\r\n\t\t\t\tproviderList: [] as PayItem[]\r\n\t\t\t}\r\n\t\t},\r\n\t\tonLoad: function () {\r\n\t\t\tuni.getProvider({\r\n\t\t\t\tservice: \"payment\",\r\n\t\t\t\tsuccess: (e) => {\r\n\t\t\t\t\tconsole.log(\"payment success:\" + JSON.stringify(e));\r\n\t\t\t\t\tlet array = e.provider as string[]\r\n\t\t\t\t\tarray.forEach((value : string) => {\r\n\t\t\t\t\t\tswitch (value) {\r\n\t\t\t\t\t\t\tcase 'alipay':\r\n\t\t\t\t\t\t\t\tthis.providerList.push({\r\n\t\t\t\t\t\t\t\t\tname: '支付宝',\r\n\t\t\t\t\t\t\t\t\tid: \"alipay\",\r\n\t\t\t\t\t\t\t\t\tprovider: e.providers.find((item) : boolean => {\r\n\t\t\t\t\t\t\t\t\t\treturn item.id == 'alipay'\r\n\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t} as PayItem);\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tcase 'wxpay':\r\n\t\t\t\t\t\t\t\tthis.providerList.push({\r\n\t\t\t\t\t\t\t\t\tname: '微信',\r\n\t\t\t\t\t\t\t\t\tid: \"wxpay\",\r\n\t\t\t\t\t\t\t\t\tprovider: e.providers.find((item) : boolean => {\r\n\t\t\t\t\t\t\t\t\t\treturn item.id == 'wxpay'\r\n\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t} as PayItem);\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t},\r\n\t\t\t\tfail: (e) => {\r\n\t\t\t\t\tconsole.log(\"获取支付通道失败:\", e);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\trequestPayment(e : PayItem) {\r\n\t\t\t\tconst provider = e.id\r\n\t\t\t\tif (provider == \"alipay\") {\r\n\t\t\t\t\tthis.payAli()\r\n\t\t\t\t} else if (provider == \"wxpay\") {\n\r\n\t\t\t\t\tif (e.provider != null && e.provider?.isAppExist==false) {\r\n\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\ttitle: \"微信没有安装\",\n\t\t\t\t\t\t\ticon:'error'\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.payWX()\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tpayAli() {\r\n\t\t\t\tuni.showLoading({\r\n\t\t\t\t\ttitle: \"请求中...\"\r\n\t\t\t\t})\r\n\t\t\t\tuni.request({\r\n\t\t\t\t\turl: 'https://demo.dcloud.net.cn/payment/alipay/?total=0.01',\r\n\t\t\t\t\tmethod: 'GET',\r\n\t\t\t\t\ttimeout: 6000,\r\n\t\t\t\t\tsuccess: (res) => {\r\n\t\t\t\t\t\tthis.orderInfo = JSON.stringify(res.data);\r\n\t\t\t\t\t\tconsole.log(\"====\" + this.orderInfo)\r\n\t\t\t\t\t\tuni.hideLoading()\r\n\t\t\t\t\t\tuni.requestPayment({\r\n\t\t\t\t\t\t\tprovider: \"alipay\",\r\n\t\t\t\t\t\t\torderInfo: res.data as string,\r\n\t\t\t\t\t\t\tfail: (res) => {\r\n\t\t\t\t\t\t\t\tconsole.log(JSON.stringify(res))\r\n\t\t\t\t\t\t\t\tthis.errorCode = res.errCode\r\n\t\t\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\t\t\ticon: 'error',\r\n\t\t\t\t\t\t\t\t\ttitle: 'errorCode:' + this.errorCode\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tsuccess: (res) => {\r\n\t\t\t\t\t\t\t\tconsole.log(JSON.stringify(res))\r\n\t\t\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\t\t\ticon: 'success',\r\n\t\t\t\t\t\t\t\t\ttitle: '支付成功'\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t},\r\n\t\t\t\t\tfail: (e) => {\r\n\t\t\t\t\t\tconsole.log(e)\r\n\t\t\t\t\t\tuni.hideLoading()\r\n\t\t\t\t\t},\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tpayWX() {\r\n\t\t\t\tuni.showLoading({\r\n\t\t\t\t\ttitle: \"请求中...\"\r\n\t\t\t\t})\r\n\t\t\t\tlet url = 'https://demo.dcloud.net.cn/payment/wxpayv3.__UNI__uniappx/?total=0.01'\r\n\t\t\t\tconst res = uni.getAppBaseInfo();\n\t\t\t\tlet packageName:string | null\n\n\t\t\t\t// #ifdef APP-ANDROID\n\t\t\t\tpackageName = res.packageName\n\t\t\t\t// #endif\n\n\t\t\t\t// #ifdef APP-IOS\n\t\t\t\tpackageName = res.bundleId\n\t\t\t\t// #endif\n\n\t\t\t\tif (packageName == 'io.dcloud.hellouniappx') {//hello uniappx\n\t\t\t\t url = 'https://demo.dcloud.net.cn/payment/wxpayv3.__UNI__HelloUniAppX/?total=0.01'\n\t\t\t\t}\r\n\t\t\t\tuni.request({\r\n\t\t\t\t\turl: url,\r\n\t\t\t\t\tmethod: 'GET',\r\n\t\t\t\t\ttimeout: 6000,\r\n\t\t\t\t\theader: {\r\n\t\t\t\t\t\t\"Content-Type\": \"application/json\"\r\n\t\t\t\t\t} as UTSJSONObject,\r\n\t\t\t\t\tsuccess: (res) => {\r\n\t\t\t\t\t\tconsole.log(res.data)\r\n\t\t\t\t\t\tuni.hideLoading()\r\n\t\t\t\t\t\tuni.requestPayment({\r\n\t\t\t\t\t\t\tprovider: \"wxpay\",\r\n\t\t\t\t\t\t\torderInfo: JSON.stringify(res.data),\r\n\t\t\t\t\t\t\tfail: (res) => {\r\n\t\t\t\t\t\t\t\tconsole.log(JSON.stringify(res))\r\n\t\t\t\t\t\t\t\tthis.errorCode = res.errCode\r\n\t\t\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\t\t\tduration: 5000,\r\n\t\t\t\t\t\t\t\t\ticon: 'error',\r\n\t\t\t\t\t\t\t\t\ttitle: 'errorCode:' + this.errorCode,\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tsuccess: (res) => {\r\n\t\t\t\t\t\t\t\tconsole.log(JSON.stringify(res))\r\n\t\t\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\t\t\tduration: 5000,\r\n\t\t\t\t\t\t\t\t\ticon: 'success',\r\n\t\t\t\t\t\t\t\t\ttitle: '支付成功'\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t},\r\n\t\t\t\t\tfail: (res) => {\r\n\t\t\t\t\t\tuni.hideLoading()\r\n\t\t\t\t\t\tconsole.log(res)\r\n\t\t\t\t\t},\r\n\t\t\t\t});\r\n\t\t\t},\r\n\r\n\t\t\t//自动化测试使用\r\n\t\t\tjest_pay() {\r\n\t\t\t\tuni.requestPayment({\r\n\t\t\t\t\tprovider: \"alipay\",\r\n\t\t\t\t\torderInfo: this.orderInfo,\r\n\t\t\t\t\tfail: (res : RequestPaymentFail) => {\r\n\t\t\t\t\t\tthis.errorCode = res.errCode\r\n\t\t\t\t\t\tthis.complete = true\r\n\t\t\t\t\t},\r\n\t\t\t\t\tsuccess: (res : RequestPaymentSuccess) => {\r\n\t\t\t\t\t\tconsole.log(JSON.stringify(res))\r\n\t\t\t\t\t\tthis.complete = true\r\n\t\t\t\t\t}\r\n\t\t\t\t} as RequestPaymentOptions)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\n```\n:::"},"canvasToTempFilePath":{"name":"## uni.canvasToTempFilePath(options, componentInstance) @canvastotempfilepath","description":"把当前画布指定区域的内容导出生成指定大小的图片
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [CanvasToTempFilePathOptions](#canvastotempfilepathoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| x | number \\| null | 否 | - | - | 画布x轴起点(默认0) |\n@| y | number \\| null | 否 | - | - | 画布y轴起点(默认0) |\n@| width | number \\| null | 否 | - | - | 画布宽度(默认为canvas宽度-x) |\n@| height | number \\| null | 否 | - | - | 画布高度(默认为canvas高度-y) |\n@| destWidth | number \\| null | 否 | - | - | 输出图片宽度(默认为 width * 屏幕像素密度) |\n@| destHeight | number \\| null | 否 | - | - | 输出图片高度(默认为 height * 屏幕像素密度) |\n@| canvasId | string | 是 | - | - | 画布标识,传入 \\ 的 canvas-id |\n@| fileType | string \\| null | 否 | - | - | 目标文件的类型,默认为 'png' |\n@| quality | number \\| null | 否 | - | - | 图片的质量,取值范围为 (0, 1],不在范围内时当作1.0处理 |\n@| success | (result: [CanvasToTempFilePathSuccess](#canvastotempfilepathsuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) |\n| componentInstance | any | 是 | - | - | - | \n\n##### CanvasToTempFilePathSuccess 的属性值 @canvastotempfilepathsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tempFilePath | string | 是 | - | - | 导出生成的图片路径 |\n","returnValue":"","compatibility":"### canvasToTempFilePath 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.canvas.canvasToTempFilePath)\n"},"canvasGetImageData":{"name":"## uni.canvasGetImageData(options) @canvasgetimagedata","description":"描述 canvas 区域隐含的像素数据","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [CanvasGetImageDataOptions](#canvasgetimagedataoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| canvasId | string | 是 | - | - | 画布标识,传入 \\ 的 canvas-id |\n@| x | number \\| null | 否 | - | - | 将要被提取的图像数据矩形区域的左上角 x 坐标 |\n@| y | number \\| null | 否 | - | - | 将要被提取的图像数据矩形区域的左上角 y 坐标 |\n@| width | number \\| null | 否 | - | - | 将要被提取的图像数据矩形区域的宽度 |\n@| height | number \\| null | 否 | - | - | 将要被提取的图像数据矩形区域的高度 |\n@| success | (result: [CanvasGetImageDataSuccess](#canvasgetimagedatasuccess-values)) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### CanvasGetImageDataSuccess 的属性值 @canvasgetimagedatasuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | 回调信息 |\n| width | number | 是 | - | - | 图像数据矩形的宽度 |\n| height | number | 是 | - | - | 图像数据矩形的高度 |\n| data | Array\\ | 是 | - | - | 图像像素点数据,一维数组,每四项表示一个像素点的rgba |\n","returnValue":"","compatibility":"### canvasGetImageData 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.canvas.canvasGetImageData)\n"},"canvasPutImageData":{"name":"## uni.canvasPutImageData(options) @canvasputimagedata","description":"将像素数据绘制到画布","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **CanvasPutImageDataOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| canvasId | string | 是 | - | - | 画布标识,传入 \\ 的 canvas-id |\n@| data | Array\\ \\| null | 否 | - | - | 图像像素点数据,一维数组,每四项表示一个像素点的rgba |\n@| x | number \\| null | 否 | - | - | 源图像数据在目标画布中的位置偏移量(x 轴方向的偏移量) |\n@| y | number \\| null | 否 | - | - | 源图像数据在目标画布中的位置偏移量(y 轴方向的偏移量) |\n@| width | number \\| null | 否 | - | - | 源图像数据矩形区域的宽度 |\n@| height | number \\| null | 否 | - | - | 源图像数据矩形区域的高度 |\n@| success | (result: CanvasPutImageDataSuccess) => void \\| null | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: [UniError](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror)) => void \\| null | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void \\| null | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n","returnValue":"","compatibility":"### canvasPutImageData 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.canvas.canvasPutImageData)\n"},"createWebviewContext":{"name":"## uni.createWebviewContext(webviewId, component?) @createwebviewcontext","description":"创建 web-view 组件的上下文对象,用于操作 web-view 的行为。","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| webviewId | [string.WebviewIdString](/uts/data-type.md#ide-string) | 是 | - | - | - |\n| component | ComponentPublicInstance \\| null | 否 | - | - | | \n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [WebviewContext](#webviewcontext-values) \\| null | 否 |\n\n#### WebviewContext 的方法 @webviewcontext-values \n\n#### back() @back\n后退到 web-view 组件网页加载历史的上一页,如果不存在上一页则没有任何效果。\n\n\n##### back 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n\n\n#### forward() @forward\n前进到 web-view 组件网页加载历史的下一页,如果不存在下一页则没有任何效果。\n\n\n##### forward 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n\n\n#### reload() @reload\n重新加载 web-view 组件当前页面。\n\n\n##### reload 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n\n\n#### stop() @stop\n停止加载 web-view 组件当前网页,该方法不能阻止已经加载的 html 文档,但是能够阻止未完成的图片及延迟加载的资源。\n\n\n##### stop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n\n\n#### evalJS(js) @evaljs\n在网页中执行指定的js脚本,在 uvue 页面中可通过此方法向 web-view 组件加载的页面发送数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| js | string | 是 | - | - | - | \n\n\n##### evalJS 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9.0 | 4.11 |\n\n \n","compatibility":"### createWebviewContext 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9.0 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.component.createWebviewContext)\n"},"createVideoContext":{"name":"## uni.createVideoContext(videoId, component?) @createvideocontext","description":"创建并返回 video 上下文 videoContext 对象","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| videoId | [string.VideoIdString](/uts/data-type.md#ide-string) | 是 | - | - | - |\n| component | ComponentPublicInstance \\| null | 否 | - | - | | \n","returnValue":"### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [VideoContext](#videocontext-values) \\| null | 否 |\n\n#### VideoContext 的方法 @videocontext-values \n\n#### play() @play\n播放\n\n\n##### play 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### pause() @pause\n暂停\n\n\n##### pause 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### seek(position) @seek\n跳转到指定位置\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| position | number | 是 | - | - | 跳转到指定位置(秒) | \n\n\n##### seek 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### stop() @stop\n停止视频\n\n\n##### stop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### sendDanmu(danmu) @senddanmu\n发送弹幕\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| danmu | **Danmu** | 是 | - | - | text, color |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| text | string \\| null | 否 | - | - | 弹幕文字 |\n@| color | string \\| null | 否 | - | - | 弹幕颜色 |\n@| time | number \\| null | 否 | - | - | 显示时刻 | \n\n\n##### sendDanmu 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### playbackRate(rate) @playbackrate\n设置倍速播放\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| rate | number | 是 | - | - | , 支持倍率 0.5/0.8/1.0/1.25/1.5 | \n\n\n##### playbackRate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### requestFullScreen(direction?) @requestfullscreen\n进入全屏\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| direction | **RequestFullScreenOptions** | 否 | - | - | , 0\\|正常竖向, 90\\|屏幕逆时针90度, -90\\|屏幕顺时针90度 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| direction | number \\| null | 否 | - | | direction
- 0: 正常竖向
- 90: 屏幕逆时针90度
- -90: 屏幕顺时针90度 | \n\n\n##### requestFullScreen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n\n#### exitFullScreen() @exitfullscreen\n退出全屏\n\n\n##### exitFullScreen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9.0 | 4.11 |\n\n \n","compatibility":"### createVideoContext 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | √ | 4.11 |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](http://uniapp.dcloud.io/api/media/video-context?id=createVideoContext)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.component.createVideoContext)\n"},"createMapContext":{"name":"## uni.createMapContext(mapId, currentComponent?) @createmapcontext","description":"创建并返回 map 上下文 mapContext 对象
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| mapId | string | 是 | - | - | - |\n| currentComponent | ComponentPublicInstance | 否 | - | - | - | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [MapContext](#mapcontext-values) |\n\n#### MapContext 的方法 @mapcontext-values \n\n#### getCenterLocation(options) @getcenterlocation\n获取当前地图中心的经纬度,返回的是 gcj02 坐标系,可以用于 uni.openLocation\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [MapContextGetCenterLocationOptions](#mapcontextgetcenterlocationoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: [LocationObject](#locationobject-values)) => void | 否 | - | - | 接口调用成功的回调函数 ,res = { longitude: \"经度\", latitude: \"纬度\"} |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### LocationObject 的属性值 @locationobject-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| latitude | number | 是 | - | - | 纬度,浮点数,范围为-90~90,负数表示南纬 |\n| longitude | number | 是 | - | - | 经度,范围为-180~180,负数表示西经 |\n\n\n##### getCenterLocation 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### moveToLocation(options) @movetolocation\n将地图中心移动到当前定位点,需要配合map组件的show-location使用\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextMoveToLocationOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| latitude | number | 否 | - | - | 纬度,浮点数,范围为-90~90,负数表示南纬 |\n@| longitude | number | 否 | - | - | 经度,范围为-180~180,负数表示西经 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### moveToLocation 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### translateMarker(options) @translatemarker\n平移marker,带动画\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [MapContextTranslateMarkerOptions](#mapcontexttranslatemarkeroptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| markerId | number | 是 | - | - | 指定marker |\n@| destination | [LocationObject](#locationobject-values) | 是 | - | - | 指定marker移动到的目标点 |\n@| autoRotate | boolean | 否 | - | - | 移动过程中是否自动旋转marker |\n@| rotate | number | 否 | - | - | marker的旋转角度 |\n@| moveWithRotate | boolean | 否 | - | - | 平移和旋转同时进行,默认值false(仅微信小程序2.13.0支持) |\n@| duration | number | 否 | - | - | 动画持续时长,默认值1000ms,平移与旋转分别计算 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### MapContextTranslateMarkerOptions 的方法 @mapcontexttranslatemarkeroptions-values \n\n##### animationEnd(result) @animationend\n动画结束回调函数\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| result | any | 是 | - | - | - | \n\n\n###### animationEnd 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n\n##### translateMarker 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### includePoints(options) @includepoints\n缩放视野展示所有经纬度\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextIncludePointsOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| points | Array\\<[LocationObject](#locationobject-values)\\> | 是 | - | - | 要显示在可视区域内的坐标点列表,[{latitude, longitude}\\] |\n@| padding | Array\\ | 否 | - | - | 坐标点形成的矩形边缘到地图边缘的距离,单位像素。格式为\\[上,右,下,左]安卓上只能识别数组第一项,上下左右的padding一致。开发者工具暂不支持padding参数。 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### includePoints 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### getRegion(options) @getregion\n获取当前地图的视野范围\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [MapContextGetRegionOptions](#mapcontextgetregionoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: [MapContextGetRegionResult](#mapcontextgetregionresult-values)) => void | 否 | - | - | 接口调用成功的回调函数,res = {southwest, northeast},西南角与东北角的经纬度 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### MapContextGetRegionResult 的属性值 @mapcontextgetregionresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| southwest | [LocationObject](#locationobject-values) | 是 | - | - | 西南角的经纬度 |\n| northeast | [LocationObject](#locationobject-values) | 是 | - | - | 东北角的经纬度 |\n\n\n##### getRegion 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### getScale(options) @getscale\n获取当前地图的缩放级别\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [MapContextGetScaleOptions](#mapcontextgetscaleoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| success | (result: [MapContextGetScaleResult](#mapcontextgetscaleresult-values)) => void | 否 | - | - | 接口调用成功的回调函数,res = {scale} |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n##### MapContextGetScaleResult 的属性值 @mapcontextgetscaleresult-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| scale | number | 是 | - | - | 地图缩放级别 |\n\n\n##### getScale 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### addCustomLayer(options) @addcustomlayer\n添加个性化图层\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextAddCustomLayerOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| layerId | string | 是 | - | - | 个性化图层id |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### addCustomLayer 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### addGroundOverlay(options) @addgroundoverlay\n创建自定义图片图层,图片会随着地图缩放而缩放\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextAddGroundOverlayOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| id | string | 是 | - | - | 图片图层 id |\n@| src | string | 是 | - | - | 图片路径,支持网络图片、临时路径、代码包路径 |\n@| bounds | **Bounds** | 是 | - | - | 图片覆盖的经纬度范围 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| southwest | [LocationObject](#locationobject-values) | 是 | - | - | 西南角的经纬度 |\n@@| northeast | [LocationObject](#locationobject-values) | 是 | - | - | 东北角的经纬度 |\n@| visible | boolean | 否 | - | - | 是否可见 |\n@| zIndex | number | 否 | - | - | 图层绘制顺序 |\n@| opacity | number | 否 | - | - | 图层透明度 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### addGroundOverlay 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### addMarkers(options) @addmarkers\n添加 marker\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextAddMarkersOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| markers | Array\\ | 是 | - | - | 同传入 map 组件的 marker 属性 |\n@| clear | boolean | 是 | - | - | 是否先清空地图上所有 marker |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### addMarkers 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### fromScreenLocation(options) @fromscreenlocation\n获取屏幕上的点对应的经纬度,坐标原点为地图左上角\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextFromScreenLocationOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| x | number | 是 | - | - | x 坐标值 |\n@| y | number | 是 | - | - | y 坐标值 |\n@| success | (result: [LocationObject](#locationobject-values)) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### fromScreenLocation 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### initMarkerCluster(options) @initmarkercluster\n初始化点聚合的配置,未调用时采用默认配置\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextInitMarkerClusterOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| enableDefaultStyle | boolean | 是 | - | - | 启用默认的聚合样式 |\n@| zoomOnClick | boolean | 是 | - | - | 点击已经聚合的标记点时是否实现聚合分离 |\n@| gridSize | number | 是 | - | - | 聚合算法的可聚合距离,即距离小于该值的点会聚合至一起,以像素为单位 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### initMarkerCluster 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### moveAlong(options) @movealong\n沿指定路径移动 marker,用于轨迹回放等场景。动画完成时触发回调事件,若动画进行中,对同一 marker 再次调用 moveAlong 方法,前一次的动画将被打断。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextMoveAlongOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| markerId | number | 是 | - | - | 指定 marker |\n@| path | Array\\<[LocationObject](#locationobject-values)\\> | 是 | - | - | 移动路径的坐标串,坐标点格式 {longitude, latitude} |\n@| autoRotate | boolean | 否 | - | - | 根据路径方向自动改变 marker 的旋转角度 |\n@| duration | number | 是 | - | - | 平滑移动的时间 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### moveAlong 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### openMapApp(options) @openmapapp\n拉起地图APP选择导航。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextOpenMapAppOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| destination | string | 是 | - | - | 目的地名称 |\n@| latitude | number | 是 | - | - | 目的地纬度 |\n@| longitude | number | 是 | - | - | 目的地经度 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### openMapApp 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### removeCustomLayer(options) @removecustomlayer\n移除个性化图层\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextRemoveCustomLayerOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| layerId | string | 是 | - | - | 个性化图层id |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### removeCustomLayer 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### removeGroundOverlay(options) @removegroundoverlay\n移除自定义图片图层\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextRemoveGroundOverlayOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| id | string | 是 | - | - | 图片图层 id |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### removeGroundOverlay 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### removeMarkers(options) @removemarkers\n移除 marker\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextRemoveMarkersOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| markerIds | Array\\ | 是 | - | - | 要被删除的marker的id属性组成的数组 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### removeMarkers 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setCenterOffset(options) @setcenteroffset\n设置地图中心点偏移,向后向下为增长,屏幕比例范围(0.25~0.75),默认偏移为[0.5, 0.5\\]\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextSetCenterOffsetOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| offset | Array\\ | 是 | - | - | 偏移量,两位数组 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### setCenterOffset 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### toScreenLocation(options) @toscreenlocation\n获取经纬度对应的屏幕坐标,坐标原点为地图左上角。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextToScreenLocationOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| latitude | number | 是 | - | - | 纬度 |\n@| longitude | number | 是 | - | - | 经度 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### toScreenLocation 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### updateGroundOverlay(options) @updategroundoverlay\n更新自定义图片图层。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **MapContextUpdateGroundOverlayOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| id | string | 是 | - | - | 图片图层 id |\n@| src | string | 是 | - | - | 图片路径,支持网络图片、临时路径、代码包路径 |\n@| bounds | [Bounds](#bounds-values) | 是 | - | - | 图片路径,支持网络图片、临时路径、代码包路径 |\n@| visible | boolean | 否 | - | - | 是否可见 |\n@| zIndex | number | 否 | - | - | 图层绘制顺序 |\n@| opacity | number | 否 | - | - | 图层透明度 |\n@| success | (result: any) => void | 否 | - | - | 接口调用成功的回调函数 |\n@| fail | (result: any) => void | 否 | - | - | 接口调用失败的回调函数 |\n@| complete | (result: any) => void | 否 | - | - | 接口调用结束的回调函数(调用成功、失败都会执行) | \n\n\n##### updateGroundOverlay 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### on(event, callback) @on\n监听地图事件。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| event | \"markerClusterCreate\" \\| \"markerClusterClick\" | 是 | - | - | - |\n| callback | (args?: Array\\) => any | 是 | - | - | - | \n\n\n##### on 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### $getAppMap() @$getappmap\n获取原生地图对象 plus.maps.Map\n\n##### 返回值 \n\n| 类型 |\n| :- |\n| any |\n \n\n##### $getAppMap 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### createMapContext 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/api/location/map.html#createmapcontext)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.component.createMapContext)\n"},"createCanvasContext":{"name":"## uni.createCanvasContext(canvasId, componentInstance) @createcanvascontext","description":"创建 canvas 绘图上下文
","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| canvasId | string | 是 | - | - | - |\n| componentInstance | any | 是 | - | - | - | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [CanvasContext](#canvascontext-values) |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fillStyle | string | 是 | - | - | 填充色 |\n@| strokeStyle | string | 是 | - | - | 边框颜色 |\n@| shadowBlur | number | 是 | - | - | 阴影的模糊级别 |\n@| shadowColor | string | 是 | - | - | 阴影的颜色 |\n@| shadowOffsetX | number | 是 | - | - | 阴影相对于形状在水平方向的偏移 |\n@| shadowOffsetY | number | 是 | - | - | 阴影相对于形状在竖直方向的偏移 |\n@| lineWidth | number | 是 | - | - | 线条的宽度 |\n@| lineCap | string | 是 | - | - | 线条的端点样式
- butt:
- round:
- square: |\n@| lineJoin | string | 是 | - | - | 线条的结束交点样式
- bevel:
- round:
- miter: |\n@| miterLimit | number | 是 | - | - | 最大斜接长度 |\n@| globalAlpha | number | 是 | - | - | 透明度 |\n@| globalCompositeOperation | string | 是 | - | - | 设置要在绘制新形状时应用的合成操作的类型 |\n@| lineDashOffset | number | 是 | - | - | 偏移量 |\n@| font | string | 是 | - | - | 字体样式 |\n#### CanvasContext 的方法 @canvascontext-values \n\n#### setFillStyle(color) @setfillstyle\n设置填充色\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| color | [CanvasGradient](#canvasgradient-values) | 是 | - | - | - | \n\n##### CanvasGradient 的方法 @canvasgradient-values \n\n##### addColorStop(stop, color) @addcolorstop\n添加颜色的渐变点\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stop | number | 是 | - | - | - |\n| color | string | 是 | - | - | - | \n\n\n###### addColorStop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n\n##### setFillStyle 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setStrokeStyle(color) @setstrokestyle\n设置边框颜色\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| color | string | 是 | - | - | - | \n\n\n##### setStrokeStyle 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setShadow(offsetX?, offsetY?, blur?, color?) @setshadow\n设置阴影样式\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| offsetX | number | 否 | - | - | - |\n| offsetY | number | 否 | - | - | - |\n| blur | number | 否 | - | - | - |\n| color | string | 否 | - | - | - | \n\n\n##### setShadow 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### createLinearGradient(x0, y0, x1, y1) @createlineargradient\n创建一个线性的渐变颜色\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x0 | number | 是 | - | - | - |\n| y0 | number | 是 | - | - | - |\n| x1 | number | 是 | - | - | - |\n| y1 | number | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [CanvasGradient](#canvasgradient-values) |\n \n\n##### createLinearGradient 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### createCircularGradient(x, y, r) @createcirculargradient\n创建一个圆形的渐变颜色\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | - |\n| y | number | 是 | - | - | - |\n| r | number | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [CanvasGradient](#canvasgradient-values) |\n \n\n##### createCircularGradient 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### addColorStop(stop, color) @addcolorstop\n创建一个颜色的渐变点\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stop | number | 是 | - | - | - |\n| color | string | 是 | - | - | - | \n\n\n##### addColorStop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setLineWidth(lineWidth) @setlinewidth\n设置线条的宽度\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| lineWidth | number | 是 | - | - | - | \n\n\n##### setLineWidth 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setLineCap(lineCap) @setlinecap\n设置线条的端点样式\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| lineCap | string | 是 | - | - | - | \n\n\n##### setLineCap 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setLineJoin(lineJoin) @setlinejoin\n设置线条的交点样式\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| lineJoin | string | 是 | - | - | - | \n\n\n##### setLineJoin 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setLineDash(pattern, offset) @setlinedash\n设置线条的宽度\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| pattern | Array\\ | 是 | - | - | - |\n| offset | number | 是 | - | - | - | \n\n\n##### setLineDash 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setMiterLimit(miterLimit) @setmiterlimit\n设置最大斜接长度\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| miterLimit | number | 是 | - | - | - | \n\n\n##### setMiterLimit 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### rect(x, y, width, height) @rect\n创建一个矩形\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | - |\n| y | number | 是 | - | - | - |\n| width | number | 是 | - | - | - |\n| height | number | 是 | - | - | - | \n\n\n##### rect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### fillRect(x, y, width, height) @fillrect\n填充一个矩形\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | - |\n| y | number | 是 | - | - | - |\n| width | number | 是 | - | - | - |\n| height | number | 是 | - | - | - | \n\n\n##### fillRect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### strokeRect(x, y, width, height) @strokerect\n画一个矩形(非填充)\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | - |\n| y | number | 是 | - | - | - |\n| width | number | 是 | - | - | - |\n| height | number | 是 | - | - | - | \n\n\n##### strokeRect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### clearRect(x, y, width, height) @clearrect\n清除画布上在该矩形区域内的内容\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | - |\n| y | number | 是 | - | - | - |\n| width | number | 是 | - | - | - |\n| height | number | 是 | - | - | - | \n\n\n##### clearRect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### fill() @fill\n对当前路径中的内容进行填充\n\n\n##### fill 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### stroke() @stroke\n画出当前路径的边框\n\n\n##### stroke 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### beginPath() @beginpath\n开始创建一个路径\n\n\n##### beginPath 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### closePath() @closepath\n关闭一个路径\n\n\n##### closePath 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### moveTo(x, y) @moveto\n把路径移动到画布中的指定点,不创建线条\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | - |\n| y | number | 是 | - | - | - | \n\n\n##### moveTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### lineTo(x, y) @lineto\n增加一个新点,然后创建一条从上次指定点到目标点的线\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | - |\n| y | number | 是 | - | - | - | \n\n\n##### lineTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### arc(x, y, r, sAngle, eAngle, counterclockwise?) @arc\n画一条弧线\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | - |\n| y | number | 是 | - | - | - |\n| r | number | 是 | - | - | - |\n| sAngle | number | 是 | - | - | - |\n| eAngle | number | 是 | - | - | - |\n| counterclockwise | boolean | 否 | - | - | - | \n\n\n##### arc 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y) @beziercurveto\n创建三次方贝塞尔曲线路径\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| cp1x | number | 是 | - | - | - |\n| cp1y | number | 是 | - | - | - |\n| cp2x | number | 是 | - | - | - |\n| cp2y | number | 是 | - | - | - |\n| x | number | 是 | - | - | - |\n| y | number | 是 | - | - | - | \n\n\n##### bezierCurveTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### quadraticCurveTo(cpx, cpy, x, y) @quadraticcurveto\n创建二次贝塞尔曲线路径\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| cpx | number | 是 | - | - | - |\n| cpy | number | 是 | - | - | - |\n| x | number | 是 | - | - | - |\n| y | number | 是 | - | - | - | \n\n\n##### quadraticCurveTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### scale(scaleWidth, scaleHeight) @scale\n横纵坐标缩放\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| scaleWidth | number | 是 | - | - | - |\n| scaleHeight | number | 是 | - | - | - | \n\n\n##### scale 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### rotate(rotate) @rotate\n顺时针旋转当前坐标轴\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| rotate | number | 是 | - | - | - | \n\n\n##### rotate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### translate(x, y) @translate\n对当前坐标系的原点(0, 0)进行变换\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | - |\n| y | number | 是 | - | - | - | \n\n\n##### translate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### clip() @clip\n从原始画布中剪切任意形状和尺寸\n\n\n##### clip 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setFontSize(fontSize) @setfontsize\n设置字体的字号\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| fontSize | number | 是 | - | - | - | \n\n\n##### setFontSize 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### fillText(text, x, y, maxWidth?) @filltext\n在画布上绘制被填充的文本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| text | string | 是 | - | - | - |\n| x | number | 是 | - | - | - |\n| y | number | 是 | - | - | - |\n| maxWidth | number | 否 | - | - | - | \n\n\n##### fillText 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setTextAlign(align) @settextalign\n设置文字的对齐\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| align | string | 是 | - | - | - | \n\n\n##### setTextAlign 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setTextBaseline(textBaseline) @settextbaseline\n设置文字的水平对齐\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| textBaseline | string | 是 | - | - | - | \n\n\n##### setTextBaseline 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### drawImage(imageResource, dx?, dy?, dWidth?, dHeigt?, sx?, sy?, sWidth?, sHeight?) @drawimage\n绘制图像到画布\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| imageResource | string | 是 | - | - | - |\n| dx | number | 否 | - | - | - |\n| dy | number | 否 | - | - | - |\n| dWidth | number | 否 | - | - | - |\n| dHeigt | number | 否 | - | - | - |\n| sx | number | 否 | - | - | - |\n| sy | number | 否 | - | - | - |\n| sWidth | number | 否 | - | - | - |\n| sHeight | number | 否 | - | - | - | \n\n\n##### drawImage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setGlobalAlpha(alpha) @setglobalalpha\n设置全局画笔透明度\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| alpha | number | 是 | - | - | - | \n\n\n##### setGlobalAlpha 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### save() @save\n保存当前的绘图上下文\n\n\n##### save 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### restore() @restore\n恢复之前保存的绘图上下文\n\n\n##### restore 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### draw(reserve?, callback?) @draw\n将之前在绘图上下文中的描述(路径、变形、样式)画到 canvas 中\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| reserve | boolean | 否 | - | - | - |\n| callback | (result: any) => void | 否 | - | - | - | \n\n\n##### draw 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### measureText(text) @measuretext\n测量文本尺寸信息,目前仅返回文本宽度\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| text | string | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| **CanvasTextMetrics** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| width | number | 是 | - | - | 文本的宽度 | \n\n##### measureText 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### arcTo(x1, y1, x2, y2, radius) @arcto\n根据控制点和半径绘制圆弧路径\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x1 | number | 是 | - | - | - |\n| y1 | number | 是 | - | - | - |\n| x2 | number | 是 | - | - | - |\n| y2 | number | 是 | - | - | - |\n| radius | number | 是 | - | - | - | \n\n\n##### arcTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### strokeText(text, x, y, maxWidth?) @stroketext\n给定的 (x, y) 位置绘制文本描边的方法\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| text | string | 是 | - | - | - |\n| x | number | 是 | - | - | - |\n| y | number | 是 | - | - | - |\n| maxWidth | number | 否 | - | - | - | \n\n\n##### strokeText 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### createPattern(image, repetition) @createpattern\n对指定的图像创建模式的方法,可在指定的方向上重复元图像\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| image | string | 是 | - | - | - |\n| repetition | string | 是 | - | - | - | \n\n\n##### createPattern 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### setTransform(scaleX, skewX, skewY, scaleY, translateX, translateY) @settransform\n使用矩阵重新设置(覆盖)当前变换的方法\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| scaleX | number | 是 | - | - | - |\n| skewX | number | 是 | - | - | - |\n| skewY | number | 是 | - | - | - |\n| scaleY | number | 是 | - | - | - |\n| translateX | number | 是 | - | - | - |\n| translateY | number | 是 | - | - | - | \n\n\n##### setTransform 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### createCanvasContext 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","tutorial":"\n### 参见\n- [createCanvasContext](https://doc.dcloud.net.cn/uni-app-x/api/create-canvas-context.html)\n\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.component.createCanvasContext)\n"},"general_type":{"name":"## 通用类型\n","param":"### GeneralCallbackResult \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | 错误信息 |\n"}} \ No newline at end of file diff --git a/docs/.vuepress/utils/utsComJson.json b/docs/.vuepress/utils/utsComJson.json index 76e138d6..e62a2817 100644 --- a/docs/.vuepress/utils/utsComJson.json +++ b/docs/.vuepress/utils/utsComJson.json @@ -1 +1 @@ -{"animation-view":{"name":"## animation-view","description":"Lottie 动画\n> 本 Component 是 uni ext component,需下载插件:[animation-view](https://ext.dcloud.net.cn/plugin?name=uni-animation-view)\n","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| path | string | \"\" | | 动画资源地址,目前只支持绝对路径 |\n| loop | boolean | false | | 动画是否循环播放 |\n| autoplay | boolean | false | | 动画是否自动播放 |\n| action | string | \"stop\" | | 动画操作,可取值 play、pause、stop |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| play | | 播放 |\n@| pause | | 暂停 |\n@| stop | | 停止 |\n| hidden | boolean | false | | 是否隐藏动画 |\n| @ended | (event: [UniEvent](/component/common#unievent)) => void | - | | - |","event":"","example":"","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/animation-view)\n- [插件市场](https://ext.dcloud.net.cn/plugin?id=10674)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/animation-view.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.animation-view)\n"},"button":{"name":"## button","description":"> 组件类型:UniButtonElement \n\n 按钮","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| disabled | boolean | false | | 是否禁用 |\n| hover-class | string([string.ClassString](/uts/data-type.md#ide-string)) | \"button-hover\" | | 指定按下去的样式类。当 hover-class=\"none\" 时,没有点击态效果 |\n| hover-start-time | number | 20 | | 按住后多久出现点击态,单位毫秒 |\n| hover-stay-time | number | 70 | | 手指松开后点击态保留时间,单位毫秒 |\n| size | string | \"default\" | | 按钮的大小 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| default | | 默认大小 |\n@| mini | | 小尺寸 |\n| type | string | \"default\" | | 按钮的样式类型 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| default | | 白色 |\n@| primary | | 蓝色 |\n@| warn | | 红色 |\n| plain | boolean | false | | 按钮是否镂空,背景色透明 |\n| loading | boolean | - | | 名称前是否带 loading 图标 |\n| form-type | string | - | | 用于 form 组件,点击分别会触发 form 组件的 submit/reset 事件 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| submit | | 提交表单 |\n@| reset | | 重置表单 |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/button/button.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/button/button\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { ItemType } from '@/components/enum-data/enum-data'\r\n export default {\r\n data() {\r\n return {\r\n plain_boolean: false,\r\n disabled_boolean: false,\r\n default_style: false,\r\n size_enum: [{ \"value\": 0, \"name\": \"default\" }, { \"value\": 1, \"name\": \"mini\" }] as ItemType[],\r\n size_enum_current: 0,\r\n type_enum: [{ \"value\": 0, \"name\": \"default\" }, { \"value\": 1, \"name\": \"primary\" }, { \"value\": 2, \"name\": \"warn\" }] as ItemType[],\r\n type_enum_current: 0,\r\n count: 0,\r\n text: 'uni-app-x'\r\n }\r\n },\r\n methods: {\r\n button_click() {\r\n console.log(\"组件被点击时触发\")\r\n this.count++\r\n },\r\n button_touchstart() { console.log(\"手指触摸动作开始\") },\r\n button_touchmove() { console.log(\"手指触摸后移动\") },\r\n button_touchcancel() { console.log(\"手指触摸动作被打断,如来电提醒,弹窗\") },\r\n button_touchend() { console.log(\"手指触摸动作结束\") },\r\n button_tap() { console.log(\"手指触摸后马上离开\") },\r\n button_longpress() { console.log(\"如果一个组件被绑定了 longpress 事件,那么当用户长按这个组件时,该事件将会被触发。\") },\r\n change_plain_boolean(checked : boolean) { this.plain_boolean = checked },\r\n change_disabled_boolean(checked : boolean) { this.disabled_boolean = checked },\r\n change_default_style(checked : boolean) { this.default_style = checked },\r\n radio_change_size_enum(checked : number) { this.size_enum_current = checked },\r\n radio_change_type_enum(checked : number) { this.type_enum_current = checked },\r\n confirm_text_input(value : string) { this.text = value },\r\n navigateToChild() {\r\n uni.navigateTo({\r\n url: 'buttonstatus',\r\n })\r\n },\r\n //用于自动化测试\r\n checkUniButtonElement() : boolean {\r\n const button = uni.getElementById(\"testButton\")\r\n if (button != null && button instanceof UniButtonElement) {\r\n return true\r\n }\r\n return false\r\n }\r\n }\r\n }\r\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"### 子组件 @children-tags \n 不可以嵌套组件","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/button)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/button.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.button)\n"},"canvas":{"name":"## canvas","description":"> 组件类型:[UniCanvasElement](#unicanvaselement) \n\n 画布","attribute":"","event":"","example":"","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.21 | x | x |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://doc.dcloud.net.cn/uni-app-x/component/canvas.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.canvas)\n","component_type":"### UniCanvasElement\ncanvas元素对象\n#### UniCanvasElement 的属性值\n| 名称 | 类型 | 必填 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| width | number | 是 | - | Canvas宽度 |\n| height | number | 是 | - | Canvas高度 |\n#### UniCanvasElement 的方法\n##### getContext(contentType) @getcontext\n返回 Canvas 的绘图上下文\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| contentType | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [CanvasRenderingContext2D](#canvasrenderingcontext2d-values) \\| null | 否 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| canvas | [UniCanvasElement](#unicanvaselement-values) | 是 | - | - | 是对与给定上下文关联的HTMLCanvasElement对象的只读引用 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| width | number | 是 | - | - | Canvas宽度 |\n@@| height | number | 是 | - | - | Canvas高度 |\n@@| classList | Array\\ | 是 | - | - | 只读属性 获取当前元素的的 class 属性的动态集合。 |\n@@| firstChild | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 只读属性 获取当前元素的的第一个子元素,如果元素是无子元素,则返回 null。 |\n@@| lastChild | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 只读属性 获取当前元素的最后一个子元素,如果没有子元素,则返回 null。 |\n@@| parentElement | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 只读属性 获取当前元素在 DOM 树中的父元素,如果没有父元素(如未添加到DOM树中),则返回null。 |\n@@| previousSibling | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 只读属性 获取当前元素的前一个同级元素,没有则返回null。 |\n@@| nextElementSibling | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 只读属性 获取在 DOM 树中紧跟在其后面的同级元素,如果指定的元素为最后一个元素,则返回 null。 |\n@@| children | Array\\<[UniElement](/dom/unielement.md)\\> | 是 | - | - | 只读属性 获取当前元素包含的子元素的集合 |\n@@| tagName | string | 是 | - | - | 只读属性 获取当前元素的标签名 |\n@@| nodeName | string | 是 | - | - | 只读属性 获取当前元素的元素名称 |\n@@| dataset | Map\\ | 是 | - | - | 只读属性 获取元素上自定义数据属性(data-*)的集合 |\n@@| attributes | Map\\ | 是 | - | - | 只读属性 获取元素上所有属性元素的集合 |\n@@| style | [CSSStyleDeclaration](/dom/cssstyledeclaration.md) | 是 | - | - | 只读属性 获取元素的CSS样式对象 |\n@@| scrollWidth | number | 是 | - | - | 只读属性 获取可滚动元素内容的总宽度,仅scroll-view、list-view组件支持,其他组件返回视图宽度 |\n@@| scrollHeight | number | 是 | - | - | 只读属性 获取可滚动元素内容的总高度,仅scroll-view、list-view组件支持,其他组件返回视图高度 |\n@@| scrollLeft | number | 是 | - | - | 获取或修改元素滚动条到元素左边的距离像素数,仅scroll-view、list-view组件支持。其他组件返回0 |\n@@| scrollTop | number | 是 | - | - | 获取或修改元素滚动条到元素顶部的距离像素数,仅scroll-view、list-view组件支持。其他组件返回0 |\n@@| offsetLeft | number | 是 | - | - | 只读属性 元素的左边界偏移值 单位px |\n@@| offsetTop | number | 是 | - | - | 只读属性 元素的顶部边界偏移值 单位px |\n@@| offsetWidth | number | 是 | - | - | 只读属性 元素的布局宽度,宽度包含border、padding的数据值 单位px |\n@@| offsetHeight | number | 是 | - | - | 只读属性 元素的布局高度,高度包含border、padding的数据值 单位px |\n@@| ext | Map\\ | 是 | - | - | 只读属性 扩展属性 |\n@| font | string | 是 | 10px | - | 设置字体大小 |\n@| fillStyle | [CanvasGradient](#canvasgradient-values) \\| string | 是 | #000 (黑色) | - | 设置填充颜色 |\n@| globalAlpha | number | 是 | 1.0 | - | 用来描述在 canvas 上绘图之前,设置图形和图片透明度的属性。数值的范围从 0.0(完全透明)到 1.0(完全不透明) |\n@| globalCompositeOperation | \"\" \\| \"source-over\" \\| \"source-atop\" \\| \"source-in\" \\| \"source-out\" \\| \"destination-over\" \\| \"destination-atop\" \\| \"destination-in\" \\| \"destination-out\" \\| \"lighter\" \\| \"copy\" \\| \"xor\" | 是 | - | - | 在绘制新形状时应用的合成操作的类型,其中 type 是用于标识要使用的合成或混合模式操作的字符串 |\n@| lineCap | \"\" \\| \"butt\" \\| \"round\" \\| \"square\" | 是 | butt | - | 指定如何绘制每一条线条末端的属性,可选值:`butt`线段末端以方形结束;`round`线段末端以圆形结束;`square`线段末端以方形结束,但是会增加一个一半宽度的矩形区域。 |\n@| lineDashOffset | number | 是 | - | - | 设置虚线偏移量 |\n@| lineJoin | \"\" \\| \"round\" \\| \"bevel\" \\| \"miter\" | 是 | miter | - | 设置 2 个长度不为 0 的线条相连部分如何连接在一起的属性,可选值:`bevel`斜角;`round`圆角;`miter`尖角。 |\n@| lineWidth | number | 是 | 1px | - | 设置线条的宽度 |\n@| strokeStyle | [CanvasGradient](#canvasgradient-values) \\| string | 是 | #000 (黑色) | - | 设置边框的颜色 |\n@| textAlign | \"\" \\| \"left\" \\| \"right\" \\| \"center\" \\| \"start\" \\| \"end\" | 是 | left | - | 设置文本的对齐方式,可取值:`left`左对齐;`center`居中对齐;`right`右对齐。 |\n@| miterLimit | number | 是 | - | - | 设置斜接面限制比例的属性。当获取属性值时,会返回当前的值(默认值是10.0 )。当给属性赋值时,0、负数、 Infinity 和 NaN 都会被忽略;除此之外都会被赋予一个新值。 |\n@| textBaseline | \"\" \\| \"top\" \\| \"hanging\" \\| \"middle\" \\| \"alphabetic\" \\| \"ideographic\" \\| \"bottom\" | 是 | - | - | 描述绘制文本时,当前文本基线的属性 |\n##### UniCanvasElement 的方法 @unicanvaselement-values \n\n##### getContext(contentType) @getcontext\n返回 Canvas 的绘图上下文\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| contentType | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [CanvasRenderingContext2D](#canvasrenderingcontext2d-values) \\| null | 否 |\n \n\n###### getContext 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### takeSnapshot(options) @takesnapshot\n对当前组件进行截图,调用此方法会将当前组件(包含子节点)渲染结果导出成图片。
成功会返回图片对应的临时文件路径,目前默认png格式
\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [TakeSnapshotOptions](#takesnapshotoptions-values) | 是 | - | - | 组件截图的参数对象 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| type | string \\| null | 否 | \"file\" | - | 截图导出类型,目前仅支持 'file' 保存到临时文件目录 |\n@| format | string \\| null | 否 | \"png\" | - | 截图文件格式,目前仅支持 'png' |\n@| success | (res: [TakeSnapshotSuccess](#takesnapshotsuccess-values)) => void \\| null | 否 | - | - | 成功回调函数定义 |\n@| fail | (res: [TakeSnapshotFail](#takesnapshotfail-values)) => void \\| null | 否 | - | - | 失败回调函数定义 |\n@| complete | (res: any) => void \\| null | 否 | - | - | 完成回调函数定义 | \n\n##### TakeSnapshotSuccess 的属性值 @takesnapshotsuccess-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| tempFilePath | string | 是 | - | - | 截图保存的临时文件路径 |\n\n##### TakeSnapshotFail 的属性值 @takesnapshotfail-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| errMsg | string | 是 | - | - | - |\n\n\n###### takeSnapshot 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.93 | 4.11 |\n\n\n##### appendChild(aChild) @appendchild\n将一个元素添加到指定父元素的子元素列表的末尾处。如果将被插入的元素已经存在于当前文档的文档树中,那么将会它从原先的位置移动到新的位置。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| aChild | [UniElement](/dom/unielement.md) | 是 | - | - | 插入子元素对象 | \n\n\n###### appendChild 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### insertBefore(newChild, refChild?) @insertbefore\n在参考元素之前插入一个拥有指定父元素的子元素。如果给定的子元素是对文档中现有元素的引用,insertBefore() 会将其从当前位置移动到新位置。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| newChild | [UniElement](/dom/unielement.md) | 是 | - | - | 插入子元素对象 |\n| refChild | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 已存在父元素的子元素对象 | \n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [UniElement](/dom/unielement.md) \\| null | 否 |\n \n\n###### insertBefore 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### setAttribute(key, value) @setattribute\n设置指定元素上的某个属性值。如果设置的属性已经存在,则更新该属性值;否则使用指定的名称和值添加一个新的属性。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 属性名称 |\n| value | string | 是 | - | - | 属性值域 | \n\n\n###### setAttribute 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getAttribute(key) @getattribute\n获取元素指定的属性值,如果指定的属性不存在则返回null。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 属性名称 | \n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| string \\| null | 否 |\n \n\n###### getAttribute 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### hasAttribute(key) @hasattribute\n返回改元素是否包含有指定的属性,属性存在则返回true,否则返回false。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 属性名称 | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| boolean |\n \n\n###### hasAttribute 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### removeAttribute(key) @removeattribute\n从元素中删除一个属性,如果指定的属性不存在,则不做任何操作,也不会产生错误。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 属性名称 | \n\n\n###### removeAttribute 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getBoundingClientRect() @getboundingclientrect\n获取元素的大小及其相对于窗口的位置信息。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [DOMRect](/dom/domrect.md) |\n \n\n###### getBoundingClientRect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getDrawableContext() @getdrawablecontext\n获取组件的绘制对象,仅uvue页面中的 view 组件支持,其它组件不支持则返回null。\n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [DrawableContext](/dom/drawablecontext.md) \\| null | 否 |\n \n\n###### getDrawableContext 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | 4.11 |\n\n\n##### addEventListener(type, callback) @addeventlistener\n将指定的监听器注册到元素对象上,当该对象触发指定的事件时,指定的回调函数就会被执行。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 事件类型 |\n| callback | (event: T) => any | 是 | - | - | 事件监听器 T表示event类型,R表示返回值类型 | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| UniCallbackWrapper |\n \n\n###### addEventListener 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### removeEventListener(type, callbackWrapper) @removeeventlistener\n删除使用 addEventListener 方法添加的事件监听器。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 事件类型 |\n| callbackWrapper | UniCallbackWrapper | 是 | - | - | 事件监听回调封装类 | \n\n\n###### removeEventListener 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### removeChild(aChild) @removechild\n从元素中删除一个子元素,返回删除的元素。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| aChild | [UniElement](/dom/unielement.md) | 是 | - | - | 被删除子元素对象 | \n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [UniElement](/dom/unielement.md) \\| null | 否 |\n \n\n###### removeChild 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### remove() @remove\n把元素对象从它所属的 DOM 树中删除。\n\n\n###### remove 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### dispatchEvent(type, value) @dispatchevent\n向一个指定的事件目标派发一个 Event,并以合适的顺序(同步地)调用此事件的监听器回调函数。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 事件类型 |\n| value | [UniEvent](/component/common#unievent) | 是 | - | - | 事件返回对象 | \n\n\n###### dispatchEvent 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### scrollTo(x, y) @scrollto\n使界面滚动到给定元素的指定坐标位置 仅scroll-view、list-view组件支持\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | x轴要滚动到坐标位置(单位px) |\n| y | number | 是 | - | - | y轴要滚动到坐标位置(单位px) | \n\n\n###### scrollTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### scrollBy(x, y) @scrollby\n使得元素滚动一段特定距离 仅scroll-view、list-view组件支持\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | x轴要滚动的距离(单位px) |\n| y | number | 是 | - | - | y轴要滚动的距离(单位px) | \n\n\n###### scrollBy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### querySelector(selector) @queryselector\n返回文档中与指定选择器或选择器组匹配的第一个 Element对象。如果找不到匹配项,则返回null\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| selector | [string.cssSelectorString](/uts/data-type.md#ide-string) | 是 | - | - | CSS 选择器字符串 | \n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [UniElement](/dom/unielement.md) \\| null | 否 |\n \n\n###### querySelector 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### querySelectorAll(selector) @queryselectorall\n返回与指定的选择器组匹配的文档中的元素列表\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| selector | [string.cssSelectorString](/uts/data-type.md#ide-string) | 是 | - | - | CSS 选择器字符串 | \n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Array\\<[UniElement](/dom/unielement.md)\\> \\| null | 否 |\n \n\n###### querySelectorAll 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### focus() @focus\n使元素获取焦点 仅input、Textarea组件支持\n\n\n###### focus 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### blur() @blur\n使元素丢失焦点 仅input、Textarea组件支持\n\n\n###### blur 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### CanvasGradient 的方法 @canvasgradient-values \n\n##### addColorStop(stop, color) @addcolorstop\n添加颜色的渐变点。小于最小 stop 的部分会按最小 stop 的 color 来渲染,大于最大 stop 的部分会按最大 stop 的 color 来渲染\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stop | number | 是 | - | - | 表示渐变中开始与结束之间的位置,范围 0-1 |\n| color | string | 是 | - | - | 渐变点的颜色 | \n\n\n###### addColorStop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### CanvasRenderingContext2D 的方法 @canvasrenderingcontext2d-values \n\n##### arc(x, y, radius, startAngle, endAngle, anticlockwise) @arc\n绘制一段弧线\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | 圆弧中心(圆心)的 x 轴坐标 |\n| y | number | 是 | - | - | 圆弧中心(圆心)的 y 轴坐标 |\n| radius | number | 是 | - | - | 圆弧的半径 |\n| startAngle | number | 是 | - | - | 圆弧的起始点,x 轴方向开始计算,单位为弧度 |\n| endAngle | number | 是 | - | - | 圆弧的终点,单位为弧度 |\n| anticlockwise | boolean | 是 | true | - | 圆弧绘制方向,true:逆时针绘制,false:顺时针绘制。 | \n\n\n###### arc 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### arcTo(x1, y1, x2, y2, radius) @arcto\n根据控制点和半径绘制圆弧路径,使用当前的描点 (前一个 moveTo 或 lineTo 等函数的止点)。根据当前描点与给定的控制点 1 连接的直线,和控制点 1 与控制点 2 连接的直线,作为使用指定半径的圆的切线,画出两条切线之间的弧线路径\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x1 | number | 是 | - | - | 第一个控制点的 x 轴坐标 |\n| y1 | number | 是 | - | - | 第一个控制点的 y 轴坐标 |\n| x2 | number | 是 | - | - | 第二个控制点的 x 轴坐标 |\n| y2 | number | 是 | - | - | 第二个控制点的 y 轴坐标 |\n| radius | number | 是 | - | - | 圆弧的半径 | \n\n\n###### arcTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### beginPath() @beginpath\n开始创建一个路径。需要调用 fill 或者 stroke 才会使用路径进行填充或描边\n\n\n###### beginPath 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y) @beziercurveto\n绘制三次贝赛尔曲线路径\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| cp1x | number | 是 | - | - | 第一个控制点的 x 轴坐标 |\n| cp1y | number | 是 | - | - | 第一个控制点的 y 轴坐标 |\n| cp2x | number | 是 | - | - | 第二个控制点的 x 轴坐标 |\n| cp2y | number | 是 | - | - | 第二个控制点的 y 轴坐标 |\n| x | number | 是 | - | - | 结束点的 x 轴坐标 |\n| y | number | 是 | - | - | 结束点的 y 轴坐标 | \n\n\n###### bezierCurveTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### clearRect(x, y, width, height) @clearrect\n清除画布上在该矩形区域内的内容\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | 矩形起点的 x 轴坐标 |\n| y | number | 是 | - | - | 矩形起点的 y 轴坐标 |\n| width | number | 是 | - | - | 矩形的宽度 |\n| height | number | 是 | - | - | 矩形的高度 | \n\n\n###### clearRect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### clip() @clip\n将当前创建的路径设置为当前剪切路径\n\n\n###### clip 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### closePath() @closepath\n关闭一个路径\n\n\n###### closePath 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### createPattern(image, repetition) @createpattern\n对指定的图像创建模式的方法,可在指定的方向上重复元图像\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| image | [UniImageElement](#uniimageelement-values) | 是 | - | - | 重复的图像源,支持代码包路径和本地临时路径 (本地路径) |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| classList | Array\\ | 是 | - | - | 只读属性 获取当前元素的的 class 属性的动态集合。 |\n@| firstChild | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 只读属性 获取当前元素的的第一个子元素,如果元素是无子元素,则返回 null。 |\n@| lastChild | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 只读属性 获取当前元素的最后一个子元素,如果没有子元素,则返回 null。 |\n@| parentElement | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 只读属性 获取当前元素在 DOM 树中的父元素,如果没有父元素(如未添加到DOM树中),则返回null。 |\n@| previousSibling | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 只读属性 获取当前元素的前一个同级元素,没有则返回null。 |\n@| nextElementSibling | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 只读属性 获取在 DOM 树中紧跟在其后面的同级元素,如果指定的元素为最后一个元素,则返回 null。 |\n@| children | Array\\<[UniElement](/dom/unielement.md)\\> | 是 | - | - | 只读属性 获取当前元素包含的子元素的集合 |\n@| tagName | string | 是 | - | - | 只读属性 获取当前元素的标签名 |\n@| nodeName | string | 是 | - | - | 只读属性 获取当前元素的元素名称 |\n@| dataset | Map\\ | 是 | - | - | 只读属性 获取元素上自定义数据属性(data-*)的集合 |\n@| attributes | Map\\ | 是 | - | - | 只读属性 获取元素上所有属性元素的集合 |\n@| style | [CSSStyleDeclaration](/dom/cssstyledeclaration.md) | 是 | - | - | 只读属性 获取元素的CSS样式对象 |\n@| scrollWidth | number | 是 | - | - | 只读属性 获取可滚动元素内容的总宽度,仅scroll-view、list-view组件支持,其他组件返回视图宽度 |\n@| scrollHeight | number | 是 | - | - | 只读属性 获取可滚动元素内容的总高度,仅scroll-view、list-view组件支持,其他组件返回视图高度 |\n@| scrollLeft | number | 是 | - | - | 获取或修改元素滚动条到元素左边的距离像素数,仅scroll-view、list-view组件支持。其他组件返回0 |\n@| scrollTop | number | 是 | - | - | 获取或修改元素滚动条到元素顶部的距离像素数,仅scroll-view、list-view组件支持。其他组件返回0 |\n@| offsetLeft | number | 是 | - | - | 只读属性 元素的左边界偏移值 单位px |\n@| offsetTop | number | 是 | - | - | 只读属性 元素的顶部边界偏移值 单位px |\n@| offsetWidth | number | 是 | - | - | 只读属性 元素的布局宽度,宽度包含border、padding的数据值 单位px |\n@| offsetHeight | number | 是 | - | - | 只读属性 元素的布局高度,高度包含border、padding的数据值 单位px |\n@| ext | Map\\ | 是 | - | - | 只读属性 扩展属性 |\n| repetition | string | 是 | - | - | 如何重复图像 | \n\n##### UniImageElement 的方法 @uniimageelement-values \n\n##### takeSnapshot(options) @takesnapshot\n对当前组件进行截图,调用此方法会将当前组件(包含子节点)渲染结果导出成图片。
成功会返回图片对应的临时文件路径,目前默认png格式
\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [TakeSnapshotOptions](#takesnapshotoptions-values) | 是 | - | - | 组件截图的参数对象 | \n\n\n###### takeSnapshot 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.93 | 4.11 |\n\n\n##### appendChild(aChild) @appendchild\n将一个元素添加到指定父元素的子元素列表的末尾处。如果将被插入的元素已经存在于当前文档的文档树中,那么将会它从原先的位置移动到新的位置。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| aChild | [UniElement](/dom/unielement.md) | 是 | - | - | 插入子元素对象 | \n\n\n###### appendChild 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### insertBefore(newChild, refChild?) @insertbefore\n在参考元素之前插入一个拥有指定父元素的子元素。如果给定的子元素是对文档中现有元素的引用,insertBefore() 会将其从当前位置移动到新位置。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| newChild | [UniElement](/dom/unielement.md) | 是 | - | - | 插入子元素对象 |\n| refChild | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 已存在父元素的子元素对象 | \n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [UniElement](/dom/unielement.md) \\| null | 否 |\n \n\n###### insertBefore 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### setAttribute(key, value) @setattribute\n设置指定元素上的某个属性值。如果设置的属性已经存在,则更新该属性值;否则使用指定的名称和值添加一个新的属性。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 属性名称 |\n| value | string | 是 | - | - | 属性值域 | \n\n\n###### setAttribute 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getAttribute(key) @getattribute\n获取元素指定的属性值,如果指定的属性不存在则返回null。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 属性名称 | \n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| string \\| null | 否 |\n \n\n###### getAttribute 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### hasAttribute(key) @hasattribute\n返回改元素是否包含有指定的属性,属性存在则返回true,否则返回false。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 属性名称 | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| boolean |\n \n\n###### hasAttribute 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### removeAttribute(key) @removeattribute\n从元素中删除一个属性,如果指定的属性不存在,则不做任何操作,也不会产生错误。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| key | string | 是 | - | - | 属性名称 | \n\n\n###### removeAttribute 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getBoundingClientRect() @getboundingclientrect\n获取元素的大小及其相对于窗口的位置信息。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [DOMRect](/dom/domrect.md) |\n \n\n###### getBoundingClientRect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getDrawableContext() @getdrawablecontext\n获取组件的绘制对象,仅uvue页面中的 view 组件支持,其它组件不支持则返回null。\n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [DrawableContext](/dom/drawablecontext.md) \\| null | 否 |\n \n\n###### getDrawableContext 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | 4.11 |\n\n\n##### addEventListener(type, callback) @addeventlistener\n将指定的监听器注册到元素对象上,当该对象触发指定的事件时,指定的回调函数就会被执行。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 事件类型 |\n| callback | (event: T) => any | 是 | - | - | 事件监听器 T表示event类型,R表示返回值类型 | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| UniCallbackWrapper |\n \n\n###### addEventListener 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### removeEventListener(type, callbackWrapper) @removeeventlistener\n删除使用 addEventListener 方法添加的事件监听器。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 事件类型 |\n| callbackWrapper | UniCallbackWrapper | 是 | - | - | 事件监听回调封装类 | \n\n\n###### removeEventListener 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### removeChild(aChild) @removechild\n从元素中删除一个子元素,返回删除的元素。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| aChild | [UniElement](/dom/unielement.md) | 是 | - | - | 被删除子元素对象 | \n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [UniElement](/dom/unielement.md) \\| null | 否 |\n \n\n###### removeChild 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### remove() @remove\n把元素对象从它所属的 DOM 树中删除。\n\n\n###### remove 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### dispatchEvent(type, value) @dispatchevent\n向一个指定的事件目标派发一个 Event,并以合适的顺序(同步地)调用此事件的监听器回调函数。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 事件类型 |\n| value | [UniEvent](/component/common#unievent) | 是 | - | - | 事件返回对象 | \n\n\n###### dispatchEvent 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### scrollTo(x, y) @scrollto\n使界面滚动到给定元素的指定坐标位置 仅scroll-view、list-view组件支持\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | x轴要滚动到坐标位置(单位px) |\n| y | number | 是 | - | - | y轴要滚动到坐标位置(单位px) | \n\n\n###### scrollTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### scrollBy(x, y) @scrollby\n使得元素滚动一段特定距离 仅scroll-view、list-view组件支持\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | x轴要滚动的距离(单位px) |\n| y | number | 是 | - | - | y轴要滚动的距离(单位px) | \n\n\n###### scrollBy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### querySelector(selector) @queryselector\n返回文档中与指定选择器或选择器组匹配的第一个 Element对象。如果找不到匹配项,则返回null\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| selector | [string.cssSelectorString](/uts/data-type.md#ide-string) | 是 | - | - | CSS 选择器字符串 | \n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| [UniElement](/dom/unielement.md) \\| null | 否 |\n \n\n###### querySelector 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### querySelectorAll(selector) @queryselectorall\n返回与指定的选择器组匹配的文档中的元素列表\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| selector | [string.cssSelectorString](/uts/data-type.md#ide-string) | 是 | - | - | CSS 选择器字符串 | \n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| Array\\<[UniElement](/dom/unielement.md)\\> \\| null | 否 |\n \n\n###### querySelectorAll 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### focus() @focus\n使元素获取焦点 仅input、Textarea组件支持\n\n\n###### focus 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### blur() @blur\n使元素丢失焦点 仅input、Textarea组件支持\n\n\n###### blur 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| CanvasPattern |\n \n\n###### createPattern 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### createLinearGradient(x0, y0, x1, y1) @createlineargradient\n创建一个线性的渐变颜色。返回的CanvasGradient对象需要使用 CanvasGradient.addColorStop() 来指定渐变点,至少要两个\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x0 | number | 是 | - | - | 起点的 x 坐标 |\n| y0 | number | 是 | - | - | 起点的 y 坐标 |\n| x1 | number | 是 | - | - | 终点的 x 坐标 |\n| y1 | number | 是 | - | - | 终点的 y 坐标 | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [CanvasGradient](#canvasgradient-values) |\n \n\n###### createLinearGradient 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### createRadialGradient(x0, y0, r0, x1, y1, r01) @createradialgradient\n根据参数确定两个圆的坐标,绘制放射性渐变\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x0 | number | 是 | - | - | 开始圆形的 x 轴坐标 |\n| y0 | number | 是 | - | - | 开始圆形的 y 轴坐标 |\n| r0 | number | 是 | - | - | 开始圆形的半径 |\n| x1 | number | 是 | - | - | 结束圆形的 x 轴坐标 |\n| y1 | number | 是 | - | - | 结束圆形的 y 轴坐标 |\n| r01 | number | 是 | - | - | 结束圆形的半径 | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [CanvasGradient](#canvasgradient-values) |\n \n\n###### createRadialGradient 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### draw() @draw\n将之前在绘图上下文中的描述(路径、变形、样式)画到 canvas 中\n\n\n###### draw 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### drawImage(imageResource, sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight) @drawimage\n绘制图像到画布\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| imageResource | [UniImageElement](#uniimageelement-values) | 是 | - | - | 所要绘制的图片资源 |\n| sx | number | 是 | - | - | 需要绘制到画布中的,imageResource的矩形(裁剪)选择框的左上角 x 坐标 |\n| sy | number | 是 | - | - | 需要绘制到画布中的,imageResource的矩形(裁剪)选择框的左上角 y 坐标 |\n| sWidth | number | 是 | - | - | 需要绘制到画布中的,imageResource的矩形(裁剪)选择框的宽度 |\n| sHeight | number | 是 | - | - | 需要绘制到画布中的,imageResource的矩形(裁剪)选择框的高度 |\n| dx | number | 是 | - | - | imageResource的左上角在目标 canvas 上 x 轴的位置 |\n| dy | number | 是 | - | - | imageResource的左上角在目标 canvas 上 y 轴的位置 |\n| dWidth | number | 是 | - | - | 在目标画布上绘制imageResource的宽度,允许对绘制的imageResource进行缩放 |\n| dHeight | number | 是 | - | - | 在目标画布上绘制imageResource的高度,允许对绘制的imageResource进行缩放 | \n\n\n###### drawImage 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### fill() @fill\n对当前路径中的内容进行填充\n\n\n###### fill 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### fillRect(x, y, width, height) @fillrect\n填充一个矩形。用 setFillStyle 设置矩形的填充色,如果没设置默认是黑色\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | 矩形起点的 x 轴坐标 |\n| y | number | 是 | - | - | 矩形起点的 y 轴坐标 |\n| width | number | 是 | - | - | 矩形的宽度 |\n| height | number | 是 | - | - | 矩形的高度 | \n\n\n###### fillRect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getLineDash() @getlinedash\n在填充线时使用虚线模式, 它使用一组值来指定描述模式的线和间隙的交替长度。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Array\\ |\n \n\n###### getLineDash 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### isContextLost() @iscontextlost\n返回一个Boolean 标记上下文是否已经丢失\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [Boolean](#boolean-values) |\n\n##### Boolean 的方法 @boolean-values \n\n##### valueOf() @valueof\nReturns the primitive value of the specified object.\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| boolean |\n \n\n###### valueOf 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n\n###### isContextLost 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### fillText(text, x, y, maxWidth) @filltext\n在画布上绘制文本\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| text | string | 是 | - | - | 要渲染的文本字符串 |\n| x | number | 是 | - | - | 开始绘制文本的点的 X 轴坐标 |\n| y | number | 是 | - | - | 开始绘制文本的点的 X 轴坐标 |\n| maxWidth | number | 是 | - | - | 需要绘制的最大宽度 | \n\n\n###### fillText 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### lineTo(x, y) @lineto\n增加一个新点,然后创建一条从上次指定点到目标点的线。用 stroke 方法来画线条\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | 目标位置的 x 坐标 |\n| y | number | 是 | - | - | 目标位置的 y 坐标 | \n\n\n###### lineTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### measureText(text) @measuretext\n测量文本尺寸信息。目前仅返回文本宽度\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| text | string | 是 | - | - | 要渲测量的文本字符串 | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| **TextMetrics** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| width | number | 是 | - | - | - | \n\n###### measureText 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### moveTo(x, y) @moveto\n把路径移动到画布中的指定点\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | 目标位置的 x 坐标 |\n| y | number | 是 | - | - | 目标位置的 y 坐标 | \n\n\n###### moveTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### quadraticCurveTo(cpx, cpy, x, y) @quadraticcurveto\n创建二次贝塞尔曲线路径\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| cpx | number | 是 | - | - | 贝塞尔控制点的 x 坐标 |\n| cpy | number | 是 | - | - | 贝塞尔控制点的 y 坐标 |\n| x | number | 是 | - | - | 结束点的 x 坐标 |\n| y | number | 是 | - | - | 结束点的 y 坐标 | \n\n\n###### quadraticCurveTo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### rect(x, y, width, height) @rect\n创建一个矩形路径\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | 矩形路径起点的 x 轴坐标 |\n| y | number | 是 | - | - | 矩形路径起点的 y 轴坐标 |\n| width | number | 是 | - | - | 矩形路径的宽度 |\n| height | number | 是 | - | - | 矩形路径的高度 | \n\n\n###### rect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### restore() @restore\n恢复之前保存的绘图上下文\n\n\n###### restore 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### rotate(rotate) @rotate\n以原点为中心顺时针旋转当前坐标轴\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| rotate | number | 是 | - | - | ,以弧度计 degrees * Math.PI/180;degrees 范围为 0-360 | \n\n\n###### rotate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### save() @save\n保存绘图上下文\n\n\n###### save 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### scale(x, y) @scale\n缩放变换\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | |\n| y | number | 是 | - | - | | \n\n\n###### scale 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### setLineDash(segments) @setlinedash\n在填充线时使用虚线模式, 它使用一组值来指定描述模式的线和间隙的交替长度。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| segments | Array\\ | 是 | - | - | \\一组描述交替绘制线段和间距(坐标空间单位)长度的数字 | \n\n\n###### setLineDash 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### stroke() @stroke\n画出当前路径的边框。默认颜色色为黑色\n\n\n###### stroke 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### strokeRect(x, y, width, height) @strokerect\n画一个矩形(非填充)\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| x | number | 是 | - | - | 矩形起点的 x 轴坐标 |\n| y | number | 是 | - | - | 矩形起点的 y 轴坐标 |\n| width | number | 是 | - | - | 矩形的宽度 |\n| height | number | 是 | - | - | 矩形的高度 | \n\n\n###### strokeRect 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### strokeText(text, x, y, maxWidth) @stroketext\n文本描边\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| text | string | 是 | - | - | 要渲染的文本字符串 |\n| x | number | 是 | - | - | 开始绘制文本的点的 X 轴坐标 |\n| y | number | 是 | - | - | 开始绘制文本的点的 X 轴坐标 |\n| maxWidth | number | 是 | - | - | 需要绘制的最大宽度 | \n\n\n###### strokeText 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### transform(scaleX, skewY, skewX, scaleY, translateX, translateY) @transform\n使用矩阵多次叠加当前变换,矩阵由方法的参数进行描述。可以缩放、旋转、移动和倾斜上下文\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| scaleX | [Number](#number-values) | 是 | - | - | 水平缩放 |\n| skewY | number | 是 | - | - | 垂直倾斜 |\n| skewX | number | 是 | - | - | 水平倾斜 |\n| scaleY | number | 是 | - | - | 垂直缩放 |\n| translateX | number | 是 | - | - | 水平移动 |\n| translateY | number | 是 | - | - | 垂直移动 | \n\n##### Number 的方法 @number-values \n\n##### toString(radix?) @tostring\n返回指定 Number 对象的字符串表示形式。如果转换的基数大于 10,则会使用字母来表示大于 9 的数字,比如基数为 16 的情况,则使用 a 到 f 的字母来表示 10 到 15。如果基数没有指定,则使用 10。如果对象是负数,则会保留负号。即使 radix 是 2 时也是如此:返回的字符串包含一个负号(-)前缀和正数的二进制表示,不是 数值的二进制补码。进行数字到字符串的转换时,建议用小括号将要转换的目标括起来,防止出错。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| radix | number | 否 | - | - | 指定要用于数字到字符串的转换的基数 (从 2 到 36)。如果未指定 radix 参数,则默认值为 10。 | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n\n###### toString 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toString)\n\n##### toFixed(fractionDigits?) @tofixed\n使用定点表示法来格式化一个数值。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| fractionDigits | number | 否 | - | - | 小数点后数字的个数;介于 0 到 20(包括)之间,实现环境可能支持更大范围。如果忽略该参数,则默认为 0。 | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n\n###### toFixed 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toFixed)\n\n##### toExponential(fractionDigits?) @toexponential\n以指数表示法返回该数值字符串表示形式。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| fractionDigits | number | 否 | - | - | 可选。一个整数,用来指定小数点后有几位数字。默认情况下用尽可能多的位数来显示数字。如果 fractionDigits 太小或太大将会抛出该错误。必须介于 0 和 20(包括 20)之间。 | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n\n###### toExponential 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toExponential)\n\n##### toPrecision(precision?) @toprecision\n以指定的精度返回该数值对象的字符串表示。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| precision | number | 否 | - | - | 一个用来指定有效数个数的整数。 必须介于 1 到 21 之间。 | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| string |\n \n\n###### toPrecision 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toPrecision)\n\n##### valueOf() @valueof\n返回一个被 Number 对象包装的原始值。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| number |\n \n\n###### valueOf 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#valueOf)\n\n##### toInt() @toint\n返回一个Int 值\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Int |\n \n\n###### toInt 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toInt)\n\n##### toFloat() @tofloat\n返回一个Float 值\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Float |\n \n\n###### toFloat 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toFloat)\n\n##### toDouble() @todouble\n返回一个 Double 值\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Double |\n \n\n###### toDouble 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toDouble)\n\n##### toInt64() @toint64\n返回一个 Int64 值, app-iOS平台特有。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Int64 |\n \n\n###### toInt64 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | x | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toInt64)\n\n##### toInt32() @toint32\n返回一个 Int32 值, app-iOS平台特有。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Int32 |\n \n\n###### toInt32 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | x | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toInt32)\n\n##### toInt16() @toint16\n返回一个 Int16 值, app-iOS平台特有。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Int16 |\n \n\n###### toInt16 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | x | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toInt16)\n\n##### toInt8() @toint8\n返回一个 Int8 值, app-iOS平台特有。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Int8 |\n \n\n###### toInt8 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | x | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toInt8)\n\n##### toUInt() @touint\n返回一个 UInt 值\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| UInt |\n \n\n###### toUInt 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toUInt)\n\n##### toUInt64() @touint64\n返回一个 UInt64 值, app-iOS平台特有。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| UInt64 |\n \n\n###### toUInt64 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | x | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toUInt64)\n\n##### toUInt32() @touint32\n返回一个 UInt32 值, app-iOS平台特有。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| UInt32 |\n \n\n###### toUInt32 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | x | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toUInt32)\n\n##### toUInt16() @touint16\n返回一个 UInt16 值, app-iOS平台特有。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| UInt16 |\n \n\n###### toUInt16 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | x | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toUInt16)\n\n##### toUInt8() @touint8\n返回一个 UInt8 值, app-iOS平台特有。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| UInt8 |\n \n\n###### toUInt8 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | x | 4.11 |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toUInt8)\n\n##### toByte() @tobyte\n将当前的Number数据转换为Byte表示,如果超出Byte最大值表示范围,会得到溢出后余数表示, app-andorid平台特有。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Byte |\n \n\n###### toByte 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | x |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toByte)\n\n##### toLong() @tolong\n将当前的Number数据转换为Long表示,如果超出Long最大值表示范围,会得到溢出后余数表示, app-andorid平台特有。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Long |\n \n\n###### toLong 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | x |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toLong)\n\n##### toShort() @toshort\n将当前的Number数据转换为Short表示,如果超出Short最大值表示范围,会得到溢出后余数表示, app-andorid平台特有。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Short |\n \n\n###### toShort 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | x |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toShort)\n\n##### toUShort() @toushort\n将当前的 Number 数据转换为 UShort 表示,如果超出 UShort 最大值表示范围,会得到溢出后余数表示, app-andorid平台特有。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| UShort |\n \n\n###### toUShort 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | x |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toUShort)\n\n##### toULong() @toulong\n将当前的 Number 数据转换为 ULong 表示,如果超出 ULong 最大值表示范围,会得到溢出后余数表示, app-andorid平台特有。\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| ULong |\n \n\n###### toULong 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 3.9 | x |\n\n\n###### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/uts/buildin-object-api/Number.html#toULong)\n\n\n###### transform 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### setTransform(scaleX, skewY, skewX, scaleY, translateX, translateY) @settransform\n使用单位矩阵重新设置(覆盖)当前的变换并调用变换\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| scaleX | [Number](#number-values) | 是 | - | - | 水平缩放 |\n| skewY | [Number](#number-values) | 是 | - | - | 垂直倾斜 |\n| skewX | [Number](#number-values) | 是 | - | - | 水平倾斜 |\n| scaleY | [Number](#number-values) | 是 | - | - | 垂直缩放 |\n| translateX | [Number](#number-values) | 是 | - | - | 水平移动 |\n| translateY | [Number](#number-values) | 是 | - | - | 垂直移动 | \n\n\n###### setTransform 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### resetTransform() @resettransform\n使用单位矩阵重新设置当前变换\n\n\n###### resetTransform 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### translate(translateX, translateY) @translate\n当前网格添加平移变换\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| translateX | number | 是 | - | - | 水平方向的移动距离 |\n| translateY | number | 是 | - | - | 垂直方向的移动距离 | \n\n\n###### translate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n\n###### getContext 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n"},"checkbox":{"name":"## checkbox","description":"> 组件类型:UniCheckboxElement \n\n 多选项。在1组check-group中可选择多个","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| disabled | boolean | false | | 是否禁用 |\n| value | string | - | | checkbox 标识,选中时触发 checkbox-group 的 change 事件,并携带 checkbox 的 value |\n| checked | boolean | false | | 当前是否选中,可用来设置默认选中 |\n| ~~color~~ | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#007aff\" | | checkbox的颜色 (使用foreColor替代) |\n| backgroundColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#ffffff\" | | checkbox默认的背景颜色 |\n| borderColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#d1d1d1\" | | checkbox默认的边框颜色 |\n| activeBackgroundColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#ffffff\" | | checkbox选中时的背景颜色 |\n| activeBorderColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#d1d1d1\" | | checkbox选中时的边框颜色 |\n| ~~iconColor~~ | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#007aff\" | | checkbox的图标颜色,优先级大于color属性 (使用foreColor替代) |\n| foreColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#007aff\" | | checkbox的图标颜色,优先级大于color属性 |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/checkbox/checkbox.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/checkbox/checkbox\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n type ItemType = {\r\n value : string\r\n name : string\r\n checked : boolean\r\n }\r\n export default {\r\n data() {\r\n return {\r\n items: [\r\n {\r\n value: 'CHN',\r\n name: '中国',\r\n checked: true,\r\n },\r\n {\r\n value: 'USA',\r\n name: '美国',\r\n checked: false,\r\n },\r\n {\r\n value: 'BRA',\r\n name: '巴西',\r\n checked: false,\r\n },\r\n {\r\n value: 'JPN',\r\n name: '日本',\r\n checked: false,\r\n },\r\n {\r\n value: 'ENG',\r\n name: '英国',\r\n checked: false,\r\n },\r\n {\r\n value: 'FRA',\r\n name: '法国',\r\n checked: false,\r\n },\r\n ] as ItemType[],\r\n testEvent: false,\r\n text: '未选中',\r\n wrapText: 'uni-app x,终极跨平台方案\\nuts,大一统语言',\r\n value: [] as string[],\r\n disabled: true,\r\n checked: true,\r\n color: '#007aff',\r\n iconColor: '#211cfe',\r\n foreColor: '#ff0000',\r\n // 组件属性 autotest\r\n checked_boolean: false,\r\n disabled_boolean: false,\r\n color_input: \"#007aff\",\r\n backgroundColor_input: \"#ffffff\",\r\n borderColor_input: \"#d1d1d1\",\r\n activeBackgroundColor_input: \"#ffffff\",\r\n activeBorderColor_input: \"#d1d1d1\",\r\n iconColor_input: \"#007aff\",\r\n foreColor_input: '#ff0000'\r\n }\r\n },\r\n methods: {\r\n\r\n checkboxChange: function (e : UniCheckboxGroupChangeEvent) {\r\n // 自动化测试\r\n if ((e.target?.tagName ?? '') == 'CHECKBOX-GROUP' && e.type === 'change') {\r\n this.testEvent = true\r\n }\r\n\r\n const selectedNames : string[] = []\r\n this.items.forEach((item) => {\r\n if (e.detail.value.includes(item.value)) {\r\n selectedNames.push(item.name)\r\n }\r\n })\r\n uni.showToast({\r\n icon: 'none',\r\n title: '当前选中:' + selectedNames.join(','),\r\n })\r\n },\r\n testChange: function (e : UniCheckboxGroupChangeEvent) {\r\n this.value = e.detail.value\r\n },\r\n checkbox_click() { console.log(\"组件被点击时触发\") },\r\n checkbox_touchstart() { console.log(\"手指触摸动作开始\") },\r\n checkbox_touchmove() { console.log(\"手指触摸后移动\") },\r\n checkbox_touchcancel() { console.log(\"手指触摸动作被打断,如来电提醒,弹窗\") },\r\n checkbox_touchend() { console.log(\"手指触摸动作结束\") },\r\n checkbox_tap() { console.log(\"手指触摸后马上离开\") },\r\n checkbox_longpress() { console.log(\"如果一个组件被绑定了 longpress 事件,那么当用户长按这个组件时,该事件将会被触发。\") },\r\n change_checked_boolean(checked : boolean) { this.checked_boolean = checked },\r\n change_disabled_boolean(checked : boolean) { this.disabled_boolean = checked },\r\n confirm_color_input(value : string) { this.color_input = value },\r\n confirm_backgroundColor_input(value : string) { this.backgroundColor_input = value },\r\n confirm_borderColor_input(value : string) { this.borderColor_input = value },\r\n confirm_activeBackgroundColor_input(value : string) { this.activeBackgroundColor_input = value },\r\n confirm_activeBorderColor_input(value : string) { this.activeBorderColor_input = value },\r\n confirm_iconColor_input(value : string) { this.iconColor_input = value },\r\n confirm_foreColor_input(value : string) { this.foreColor_input = value }\r\n }\r\n }\r\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/checkbox)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/checkbox-group.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.checkbox)\n"},"checkbox-group":{"name":"## checkbox-group","description":"> 组件类型:UniCheckboxGroupElement \n\n 多选框组","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| name | string | - | | 表单的控件名称,作为键值对的一部分与表单(form组件)一同提交 |\n| @change | (event: [UniCheckboxGroupChangeEvent](#unicheckboxgroupchangeevent)) => void | - | | checkbox-group中选中项发生改变是触发 change 事件,detail = {value:\\[选中的checkbox的value的数组] |","event":"\n### 事件\n#### UniCheckboxGroupChangeEvent\n\n##### UniCheckboxGroupChangeEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniCheckboxGroupChangeEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| value | Array\\ | 是 | - | - | - |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniCheckboxGroupChangeEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"### 子组件 @children-tags \n - [checkbox](#checkbox)","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/checkbox)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/checkbox-group.html)\n"},"image":{"name":"## image","description":"> 组件类型:UniImageElement \n\n 图片","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| src | string([string.ImageURIString](/uts/data-type.md#ide-string)) | - | | 图片资源地址 |\n| mode | string | \"scaleToFill\" | | 图片裁剪、缩放的模式 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| scaleToFill | | 不保持纵横比缩放图片,使图片的宽高完全拉伸至填满 image 元素 |\n@| aspectFit | | 保持纵横比缩放图片,使图片的长边能完全显示出来。也就是说,可以完整地将图片显示出来。 |\n@| aspectFill | | 保持纵横比缩放图片,只保证图片的短边能完全显示出来。也就是说,图片通常只在水平或垂直方向是完整的,另一个方向将会发生截取 |\n@| widthFix | | 宽度不变,高度自动变化,保持原图宽高比不变 |\n@| heightFix | | 高度不变,宽度自动变化,保持原图宽高比不变 |\n@| top | | 不缩放图片,只显示图片的顶部区域 |\n@| bottom | | 不缩放图片,只显示图片的底部区域 |\n@| center | | 不缩放图片,只显示图片的中间区域 |\n@| left | | 不缩放图片,只显示图片的左边区域 |\n@| right | | 不缩放图片,只显示图片的右边区域 |\n@| top left | | 不缩放图片,只显示图片的左上边区域 |\n@| top right | | 不缩放图片,只显示图片的右上边区域 |\n@| bottom left | | 不缩放图片,只显示图片的左下边区域 |\n@| bottom right | | 不缩放图片,只显示图片的右下边区域 |\n| lazy-load | boolean | false | | 图片懒加载。只针对page与scroll-view下的image有效 |\n| fade-show | boolean | false | | 图片显示动画效果 |\n| draggable | boolean | false | | 鼠标长按是否能拖动图片(仅H5平台) |\n| @error | (event: [UniImageErrorEvent](#uniimageerrorevent)) => void | - | | 图片加载错误时触发,event.detail = { errMsg } |\n| @load | (event: [UniImageLoadEvent](#uniimageloadevent)) => void | - | | 图片加载完成时触发,event.detail = { width: '图片宽度px', height: '图片高度px' } |","event":"\n### 事件\n#### UniImageErrorEvent\n\n##### UniImageErrorEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniImageErrorEventDetail** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| errMsg | string | 是 | - | - | 错误信息 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniImageErrorEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniImageLoadEvent\n\n##### UniImageLoadEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniImageLoadEventDetail** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| width | number | 是 | - | - | 图片宽度 |\n@| height | number | 是 | - | - | 图片高度 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniImageLoadEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/image/image.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/image/image\n>Template\n```vue\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n export default {\r\n data() {\r\n return {\r\n title: 'image',\r\n imageSrc: \"/static/test-image/logo.png\" as string.ImageURIString,\r\n loadError: false,\n // 自动化测试\n autoTest: false,\n setCookieImage: \"\",\n verifyCookieImage: \"\"\r\n }\r\n },\r\n methods: {\r\n error(event : ImageErrorEvent) {\r\n this.loadError = true\r\n console.log(event.type, event.detail);\r\n },\r\n load(event : ImageLoadEvent) {\r\n console.log(event.type, event.detail);\r\n },\r\n imageFormat() {\r\n uni.navigateTo({\r\n url: '/pages/component/image/image-format'\r\n });\r\n },\r\n imageMode() {\r\n uni.navigateTo({\r\n url: '/pages/component/image/image-mode'\r\n });\r\n },\r\n imagePath() {\r\n uni.navigateTo({\r\n url: '/pages/component/image/image-path'\r\n });\r\n },\r\n imageLarge() {\r\n uni.navigateTo({\r\n url: '/pages/component/image/image-large'\r\n });\r\n }\r\n }\r\n }\r\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"### 子组件 @children-tags \n 不可以嵌套组件","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/image)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/image.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.image)\n"},"input":{"name":"## input","description":"> 组件类型:[UniInputElement](#uniinputelement) \n\n 输入框","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| name | string | - | | 表单的控件名称,作为键值对的一部分与表单(form组件)一同提交 |\n| disabled | boolean | false | | 是否禁用 |\n| value | string | \"\" | | 输入框的初始内容 |\n| type | text \\| number \\| digit \\| tel | \"text\" | | input的类型 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| text | | 文本输入键盘 |\n@| number | | 数字输入键盘 |\n@| digit | | 带小数点数字输入键盘 |\n@| tel | | 电话输入键盘 |\n| password | boolean | false | | 是否是密码类型 |\n| placeholder | string | \"\" | | 输入框为空时占位符 |\n| placeholder-style | string | \"\" | | 指定 placeholder 的样式 |\n| placeholder-class | string([string.ClassString](/uts/data-type.md#ide-string)) | \"\" | | 指定 placeholder 的样式类,目前仅支持color,font-size和font-weight |\n| maxlength | number | \"不限制长度\" | | 最大输入长度,0和正数为合法值,非法值的时候不限制最大长度 |\n| cursor-spacing | number | 0 | | 指定光标与键盘的距离,单位 px 。取 input 距离底部的距离和 cursor-spacing 指定的距离的最小值作为光标与键盘的距离 |\n| cursor-color | string([string.ColorString](/uts/data-type.md#ide-string)) | \"\" | | 指定光标颜色 |\n| auto-focus | boolean | false | | 自动获取焦点,与`focus`属性对比,此属性只会首次生效。 |\n| focus | boolean | false | | 获取焦点 |\n| confirm-type | send \\| search \\| next \\| go \\| done | \"done\" | | 设置键盘右下角按钮的文字,仅在 type为text 时生效。 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| send | | 发送 |\n@| search | | 搜索 |\n@| next | | 下一个 |\n@| go | | 前往 |\n@| done | | 完成 |\n| confirm-hold | boolean | false | | 点击键盘右下角按钮时是否保持键盘不收起 |\n| cursor | number | 0 | | 指定focus时的光标位置 |\n| selection-start | number | -1 | | 光标起始位置,自动聚集时有效,需与selection-end搭配使用 |\n| selection-end | number | -1 | | 光标结束位置,自动聚集时有效,需与selection-satrt搭配使用 |\n| adjust-position | boolean | true | | 键盘弹起时,是否自动上推页面 |\n| hold-keyboard | boolean | false | | focus时,点击页面的时候不收起键盘 |\n| inputmode | none \\| text \\| decimal \\| numeric \\| tel \\| search \\| email \\| url | \"text\" | | 是一个枚举属性,它提供了用户在编辑元素或其内容时可能输入的数据类型的提示。在符合条件的高版本webview里,uni-app的 web 和 app-vue 平台中可使用本属性。 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| none | | 无虚拟键盘。在应用程序或者站点需要实现自己的键盘输入控件时很有用。 |\n@| text | | 使用用户本地区域设置的标准文本输入键盘。 |\n@| decimal | | 小数输入键盘,包含数字和分隔符(通常是“ . ”或者“ , ”),设备可能也可能不显示减号键。 |\n@| numeric | | 数字输入键盘,所需要的就是 0 到 9 的数字,设备可能也可能不显示减号键。 |\n@| tel | | 电话输入键盘,包含 0 到 9 的数字、星号(*)和井号(#)键。表单输入里面的电话输入通常应该使用 \\ 。 |\n@| search | | 为搜索输入优化的虚拟键盘,比如,返回键可能被重新标记为“搜索”,也可能还有其他的优化。 |\n@| email | | 为邮件地址输入优化的虚拟键盘,通常包含\"@\"符号和其他优化。表单里面的邮件地址输入应该使用 \\ 。 |\n@| url | | 为网址输入优化的虚拟键盘,比如,“/”键会更加明显、历史记录访问等。表单里面的网址输入通常应该使用 \\ 。 |\n| @input | (event: [UniInputEvent](#uniinputevent)) => void | - | | 当键盘输入时,触发input事件,event.detail = {value, cursor},处理函数可以直接 return 一个字符串,将替换输入框的内容。 |\n| @focus | (event: [UniInputFocusEvent](#uniinputfocusevent)) => void | - | | 输入框聚焦时触发,event.detail = { value, height },height 为键盘高度 |\n| @blur | (event: [UniInputBlurEvent](#uniinputblurevent)) => void | - | | 输入框失去焦点时触发,event.detail = {value: value} |\n| @keyboardheightchange | (event: [UniInputKeyboardHeightChangeEvent](#uniinputkeyboardheightchangeevent)) => void | - | | 键盘高度发生变化的时候触发此事件,event.detail = {height: height, duration: duration} |\n| @confirm | (event: [UniInputConfirmEvent](#uniinputconfirmevent)) => void | - | | 点击完成按钮时触发,event.detail = {value: value} |","event":"\n### 事件\n#### UniInputEvent\n\n##### UniInputEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniInputEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| value | string | 是 | - | - | 输入框内容 |\n@| cursor | number | 是 | - | - | 光标的位置 |\n@| keyCode | number | 是 | - | - | 输入字符的Unicode值 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniInputEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniInputFocusEvent\n\n##### UniInputFocusEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniInputFocusEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| height | number | 是 | - | | 键盘高度 |\n@| value | string | 是 | - | - | 输入框内容 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniInputFocusEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniInputBlurEvent\n\n##### UniInputBlurEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniInputBlurEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| value | string | 是 | - | - | 输入框内容 |\n@| cursor | number | 是 | - | - | 选择区域的起始位置 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniInputBlurEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniInputKeyboardHeightChangeEvent\n\n##### UniInputKeyboardHeightChangeEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniInputKeyboardHeightChangeEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| height | number | 是 | - | - | 键盘高度 |\n@| duration | number | 是 | - | - | 持续时间 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniInputKeyboardHeightChangeEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniInputConfirmEvent\n\n##### UniInputConfirmEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniInputConfirmEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| value | string | 是 | - | - | 输入框内容 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniInputConfirmEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/input/input.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/input/input\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'input',\n showClearIcon: false,\n inputClearValue: '',\n showPassword: true,\n cursor: -1,\n cursor_color: \"#3393E2\",\n selectionStart: -1,\n selectionEnd: -1,\n inputEventDetail: '',\n focusAndBlurEventDetail: '',\n confirmEventDetail: '',\n keyboardHeightChangeEventDetail: '',\n focus: true,\n inputPassword: true,\n inputTypeTel: \"tel\",\n inputPlaceHolderStyle: \"color:red\",\n inputPlaceHolderClass: \"uni-input-placeholder-class\" as string.ClassString ,\n inputMaxLengthValue: \"\",\n onMaxLengthInputValue: \"\",\n inputMaxLengthFocus: false,\n inputPasswordValue: \"cipher\",\n inputFocusKeyBoardChangeValue: true,\n holdKeyboard: false,\n keyboardHeight: 0,\n focusedForKeyboardHeightChangeTest: false,\n demoValue: '123'\n }\n },\n methods: {\n inputFocusKeyBoardChange(e : UniInputKeyboardHeightChangeEvent) {\n this.inputFocusKeyBoardChangeValue = e.detail.height > 50\n },\n onMaxLengthInput(event : UniInputEvent) {\n this.onMaxLengthInputValue = event.detail.value\n },\n setCursor: function (cursor : number) {\n (this.$refs['input'] as UniInputElement).focus();\n this.cursor = cursor;\n },\n onCursorBlurChange(){\n this.cursor = 0\n },\n setSelection: function (selectionStart : number, selectionEnd : number) {\n (this.$refs['input2'] as UniInputElement).focus();\n this.selectionStart = selectionStart;\n this.selectionEnd = selectionEnd;\n },\n onSelectionBlurChange(){\n this.selectionEnd = 0;\n },\n clearInput: function (event : UniInputEvent) {\n this.inputClearValue = event.detail.value\n if (event.detail.value.length > 0) {\n this.showClearIcon = true\n } else {\n this.showClearIcon = false\n }\n },\n clearIcon: function () {\n this.inputClearValue = ''\n this.showClearIcon = false\n },\n changePassword: function () {\n this.showPassword = !this.showPassword\n },\n onInput: function (event : UniInputEvent) {\n console.log(\"键盘输入\", JSON.stringify(event.detail));\n this.inputEventDetail = JSON.stringify(event.detail)\n },\n onFocus: function (event : UniInputFocusEvent) {\n console.log(\"输入框聚焦\", JSON.stringify(event.detail));\n this.focusAndBlurEventDetail = JSON.stringify(event.detail);\n },\n onBlur: function (event : UniInputBlurEvent) {\n console.log(\"输入框失去焦点\", JSON.stringify(event.detail));\n this.focusAndBlurEventDetail = JSON.stringify(event.detail);\n },\n onConfirm: function (event : UniInputConfirmEvent) {\n console.log(\"点击完成按钮\", JSON.stringify(event.detail));\n this.confirmEventDetail = JSON.stringify(event.detail);\n },\n onKeyborardHeightChange: function (event : UniInputKeyboardHeightChangeEvent) {\n console.log(\"键盘高度发生变化\", JSON.stringify(event.detail));\n this.keyboardHeightChangeEventDetail = JSON.stringify(event.detail);\n this.keyboardHeight = event.detail.height;\n },\n test_check_input_value() : number {\n return this.onMaxLengthInputValue.length\n },\n changeCursorColor(event : UniSwitchChangeEvent) {\n const checked = event.detail.value;\n if (checked) {\n this.cursor_color = \"red\"\n } else {\n this.cursor_color = \"#3393E2\"\n }\n const input = uni.getElementById(\"uni-input-cursor-color\")\n input?.focus()\n },\n changeHoldKeyboard(event : UniSwitchChangeEvent) {\n const checked = event.detail.value;\n this.holdKeyboard = checked\n }\n }\n }\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"### 子组件 @children-tags \n 不可以嵌套组件","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/input)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/input.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.input)\n","component_type":"### UniInputElement\ninput元素对象\n#### UniInputElement 的属性值\n| 名称 | 类型 | 必填 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| name | string | 是 | | 表单的控件名称,作为键值对的一部分与表单(form组件)一同提交 |\n| type | string | 是 | | input的类型 |\n| disabled | boolean | 是 | | 是否禁用 |\n| autofocus | boolean | 是 | | 自动获取焦点 |\n| value | string | 是 | | 输入框的初始内容 |"},"list-item":{"name":"## list-item","description":"> 组件类型:UniListItemElement \n\n list-view组件的唯一合法子组件。每个item是一行","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| type | number | 0 | | 对应list-item的类型 list-view 将对同类型条目进行复用,所以合理的类型拆分,可以很好地提升 list-view 性能 |","event":"","example":"","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.02 | 3.9 | 4.11 |\n","children":"","reference":""},"sticky-header":{"name":"## sticky-header","description":"> 组件类型:UniStickyHeaderElement \n\n 吸顶布局容器

注意:暂时仅支持作为list-view、sticky-section的子节点, sticky-header不支持css样式!当一个容器视图设置多个sticky-header时,后一个sticky-header会停靠在前一个sticky-header的末尾处。","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| padding | array\\ | [0,0,0,0\\] | | 长度为 4 的数组,按 top、right、bottom、left 顺序指定内边距 |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/sticky-header/sticky-header.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/sticky-header/sticky-header\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n sift_item: [\"排序\", \"筛选\"],\n list_item: [] as Array,\n refresher_enabled_boolean: true,\n refresher_triggered_boolean: false,\n scroll_top_input: 0\n }\n },\n onLoad() {\n let lists : Array = []\n for (let i = 0; i < 40; i++) {\n lists.push(\"item---\" + i)\n }\n this.list_item = lists\n },\n methods: {\n list_view_refresherrefresh() {\n console.log(\"下拉刷新被触发 \")\n this.refresher_triggered_boolean = true\n setTimeout(() => {\n this.refresher_triggered_boolean = false\n }, 1500)\n },\n confirm_scroll_top_input(value : number) {\n this.scroll_top_input = value\n },\n clickTH(index : number) {\n console.log(\"点击表头:\" + index);\n }\n }\n }\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.02 | 3.93 | 4.11 |\n","children":"","reference":"\n### 参见\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.sticky-header)\n"},"sticky-section":{"name":"## sticky-section","description":"> 组件类型:UniStickySectionElement \n\n 吸顶布局容器

注意:暂时仅支持作为list-view的子节点, sticky-section不支持css样式!","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| push-pinned-header | boolean | true | | sticky-section元素重叠时是否继续上推 |\n| padding | array\\ | [0,0,0,0\\] | | 长度为 4 的数组,按 top、right、bottom、left 顺序指定内边距 |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/sticky-section/sticky-section.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/sticky-section/sticky-section\n>Template\n```vue\n\r\n\r\n\r\n\r\n\r\n\n```\n>Script\n```uts\n\r\n export default {\r\n data() {\r\n return {\r\n data: ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N'],\r\n sectionPadding: [0, 10, 0, 10] as Array,\r\n scrollIntoView: \"\",\r\n scrolling: false\r\n }\r\n },\r\n methods: {\r\n toTop(){\r\n this.scrollIntoView = \"\"\r\n uni.getElementById(\"list-view\")!.scrollTop = 0\r\n },\r\n //用于自动化测试\r\n listViewScrollByY(y : number) {\r\n const listview = this.$refs[\"list-view\"] as UniElement\r\n // listview.scrollBy(0, y)\n listview.scrollTop = y\r\n },\r\n gotoStickyHeader(id : string) {\n // #ifdef APP\r\n this.scrollIntoView = id\n // #endif\n // #ifdef WEB\n console.log(\"web端不支持该功能\")\n // #endif\r\n },\r\n onScroll() {\r\n this.scrolling = true\r\n },\r\n onScrollEnd() {\r\n this.scrolling = false\r\n //滚动后重置scrollIntoView = \"\"\r\n if(this.scrollIntoView != \"\") {\r\n this.scrollIntoView = \"\"\r\n }\n }\r\n }\r\n }\r\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.02 | 3.98 | 4.11 |\n","children":"","reference":"\n### 参见\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.sticky-section)\n"},"list-view":{"name":"## list-view","description":"> 组件类型:UniListViewElement \n\n 列表组件","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| direction | string | \"vertical\" | | 滚动方向,可取值 none、horizontal、vertical,默认值vertical。注:iOS 平台仅支持vertical |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| none | | 禁止滚动 |\n@| horizontal | | 横向滚动 |\n@| vertical | | 竖向滚动 |\n| ~~scroll-x~~ | boolean | false | | 允许横向滚动,不支持同时设置scroll-y属性为true,同时设置true时scroll-y生效。已废弃,请改用direction |\n| ~~scroll-y~~ | boolean | true | | 允许纵向滚动,不支持同时设置scroll-x属性为true,同时设置true时scroll-y生效。已废弃,请改用direction |\n| ~~rebound~~ | boolean | true | | 控制是否回弹效果。已废弃,请改用bounces |\n| associative-container | string | \"\" | | 关联的滚动容器 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| nested-scroll-view | | 嵌套滚动 |\n| bounces | boolean | true | | 控制是否回弹效果 优先级高于rebound |\n| upper-threshold | number | 50 | | 距顶部/左边多远时(单位px),触发 scrolltoupper 事件 |\n| lower-threshold | number | 50 | | 距底部/右边多远时(单位px),触发 scrolltolower 事件 |\n| scroll-top | number | 0 | | 设置竖向滚动条位置 |\n| scroll-left | number | 0 | | 设置横向滚动条位置 |\n| show-scrollbar | boolean | true | | 控制是否出现滚动条 |\n| scroll-into-view | string([string.IDString](/uts/data-type.md#ide-string)) | - | | 值应为某子元素id(id不能以数字开头)。设置哪个方向可滚动,则在哪个方向滚动到该元素起始位置 |\n| scroll-with-animation | boolean | false | | 是否在设置滚动条位置时使用滚动动画,设置false没有滚动动画 |\n| refresher-enabled | boolean | false | | 开启下拉刷新,暂时不支持scroll-x = true横向刷新 |\n| refresher-threshold | number | 45 | | 设置下拉刷新阈值, 仅 refresher-default-style = 'none' 自定义样式下生效 |\n| refresher-max-drag-distance | number | - | | 设置下拉最大拖拽距离(单位px),默认是下拉刷新控件高度的2.5倍 |\n| refresher-default-style | string | \"black\" | | 设置下拉刷新默认样式,支持设置 black \\| white \\| none, none 表示不使用默认样式 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| black | | 深颜色雪花样式 |\n@| white | | 浅白色雪花样式 |\n@| none | | 不使用默认样式 |\n| refresher-background | string([string.ColorString](/uts/data-type.md#ide-string)) | \"transparent\" | | 设置下拉刷新区域背景颜色,默认透明 |\n| refresher-triggered | boolean | false | | 设置当前下拉刷新状态,true 表示下拉刷新已经被触发,false 表示下拉刷新未被触发 |\n| enable-back-to-top | boolean | false | | iOS点击顶部状态栏滚动条返回顶部,只支持竖向 |\n| custom-nested-scroll | boolean | false | | 子元素是否开启嵌套滚动 将滚动事件与父元素协商处理 |\n| @refresherpulling | (event: [UniRefresherEvent](#unirefresherevent)) => void | - | | 下拉刷新控件被下拉 |\n| @refresherrefresh | (event: [UniRefresherEvent](#unirefresherevent)) => void | - | | 下拉刷新被触发 |\n| @refresherrestore | (event: [UniRefresherEvent](#unirefresherevent)) => void | - | | 下拉刷新被复位 |\n| @refresherabort | (event: [UniRefresherEvent](#unirefresherevent)) => void | - | | 下拉刷新被中止 |\n| @scrolltoupper | (event: [UniScrollToUpperEvent](#uniscrolltoupperevent)) => void | - | | 滚动到顶部/左边,会触发 scrolltoupper 事件 |\n| @scrolltolower | (event: [UniScrollToLowerEvent](#uniscrolltolowerevent)) => void | - | | 滚动到底部/右边,会触发 scrolltolower 事件 |\n| @scroll | (event: [UniScrollEvent](#uniscrollevent)) => void | - | | 滚动时触发,event.detail = {scrollLeft, scrollTop, scrollHeight, scrollWidth, deltaX, deltaY} |\n| @scrollend | (event: [UniScrollEvent](#uniscrollevent)) => void | - | | 滚动结束时触发,event.detail = {scrollLeft, scrollTop, scrollHeight, scrollWidth, deltaX, deltaY} |","event":"\n### 事件\n#### UniRefresherEvent\n\n##### UniRefresherEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniRefresherEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| dy | number | 是 | - | - | - |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniRefresherEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniScrollToUpperEvent\n\n##### UniScrollToUpperEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniScrollToUpperEventDetail** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| direction | string | 是 | - | - | 滚动方向 top 或 left |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniScrollToUpperEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniScrollToLowerEvent\n\n##### UniScrollToLowerEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniScrollToLowerEventDetail** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| direction | string | 是 | - | - | 滚动方向 bottom 或 right |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniScrollToLowerEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniScrollEvent\n\n##### UniScrollEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniScrollEventDetail** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| scrollTop | number | 是 | - | - | 竖向滚动的距离 |\n@| scrollLeft | number | 是 | - | - | 横向滚动的距离 |\n@| scrollHeight | number | 是 | - | - | 滚动区域的高度 |\n@| scrollWidth | number | 是 | - | - | 滚动区域的宽度 |\n@| deltaY | number | 是 | - | - | 当次滚动事件竖向滚动量 |\n@| deltaX | number | 是 | - | - | 当次滚动事件横向滚动量 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniScrollEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/list-view/list-view.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/list-view/list-view\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n type ScrollEventTest = {\n type: string;\n target: UniElement | null;\n currentTarget: UniElement | null;\n direction?:string\n }\n import { ItemType } from '@/components/enum-data/enum-data'\n export default {\n data() {\n return {\n refresher_triggered_boolean: false,\n refresher_enabled_boolean: false,\n scroll_with_animation_boolean: false,\n show_scrollbar_boolean: false,\n bounces_boolean: true,\n scroll_y_boolean: true,\n scroll_x_boolean: false,\n scroll_direction: \"vertical\",\n upper_threshold_input: 50,\n lower_threshold_input: 50,\n scroll_top_input: 0,\n scroll_left_input: 0,\n refresher_background_input: \"#FFF\",\n scrollData: [] as Array,\n size_enum: [{ \"value\": 0, \"name\": \"item---0\" }, { \"value\": 3, \"name\": \"item---3\" }] as ItemType[],\n scrollIntoView: \"\",\n refresherrefresh: false,\n refresher_default_style_input: \"black\",\n text: ['继续下拉执行刷新', '释放立即刷新', '刷新中', \"\"],\n state: 3,\n reset: true,\n // 自动化测试\n isScrollTest:'',\n isScrolltolowerTest:'',\n isScrolltoupperTest:'',\n // 在web端scroll事件event参数中detail类型报错,先条件编译处理\n // #ifndef WEB\n scrollDetailTest:null as UniScrollEventDetail|null,\n scrollEndDetailTest:null as UniScrollEventDetail|null,\n // #endif\n }\n },\n onLoad() {\n let lists : Array = []\n for (let i = 0; i < 10; i++) {\n lists.push(\"item---\" + i)\n }\n this.scrollData = lists\n },\n methods: {\n list_view_click() { console.log(\"组件被点击时触发\") },\n list_view_touchstart() { console.log(\"手指触摸动作开始\") },\n list_view_touchmove() { console.log(\"手指触摸后移动\") },\n list_view_touchcancel() { console.log(\"手指触摸动作被打断,如来电提醒,弹窗\") },\n list_view_touchend() { console.log(\"手指触摸动作结束\") },\n list_view_tap() { console.log(\"手指触摸后马上离开\") },\n list_view_longpress() { console.log(\"如果一个组件被绑定了 longpress 事件,那么当用户长按这个组件时,该事件将会被触发。\") },\n list_view_refresherpulling(e : RefresherEvent) {\n console.log(\"下拉刷新控件被下拉\")\n if (this.reset) {\n if (e.detail.dy > 45) {\n this.state = 1\n } else {\n this.state = 0\n }\n }\n },\n list_view_refresherrefresh() {\n console.log(\"下拉刷新被触发 \")\n this.refresherrefresh = true\n this.refresher_triggered_boolean = true\n this.state = 2\n this.reset = false;\n setTimeout(() => {\n this.refresher_triggered_boolean = false\n }, 1500)\n },\n list_view_refresherrestore() {\n this.refresherrefresh = false\n this.state = 3\n this.reset = true\n console.log(\"下拉刷新被复位\")\n },\n list_view_refresherabort() { console.log(\"下拉刷新被中止\") },\n list_view_scrolltoupper(e : UniScrollToUpperEvent) {\n console.log(\"滚动到顶部/左边,会触发 scrolltoupper 事件 direction=\" + e.detail.direction)\n this.checkEventTest({\n type:e.type,\n target:e.target,\n currentTarget:e.currentTarget,\n direction:e.detail.direction,\n } as ScrollEventTest,'scrolltoupper')\n },\n list_view_scrolltolower(e : UniScrollToLowerEvent) {\n console.log(\"滚动到底部/右边,会触发 scrolltolower 事件 direction=\" + e.detail.direction)\n this.checkEventTest({\n type:e.type,\n target:e.target,\n currentTarget:e.currentTarget,\n direction:e.detail.direction,\n } as ScrollEventTest,'scrolltolower')\n },\n list_view_scroll(e:UniScrollEvent) {\n console.log(\"滚动时触发,event.detail = {scrollLeft, scrollTop, scrollHeight, scrollWidth, deltaX, deltaY}\")\n // #ifndef WEB\n this.scrollDetailTest = e.detail\n // #endif\n this.checkEventTest({\n type:e.type,\n target:e.target,\n currentTarget:e.currentTarget\n } as ScrollEventTest,'scroll')\n },\n list_view_scrollend(e:UniScrollEvent){\n console.log(\"滚动结束时触发\",e.detail)\n // #ifndef WEB\n this.scrollEndDetailTest = e.detail\n // #endif\n this.checkEventTest({\n type:e.type,\n target:e.target,\n currentTarget:e.currentTarget\n } as ScrollEventTest,'scrollend')\n },\n list_item_click() { console.log(\"list-item组件被点击时触发\") },\n list_item_touchstart() { console.log(\"手指触摸list-item组件动作开始\") },\n list_item_touchmove() { console.log(\"手指触摸list-item组件后移动\") },\n list_item_touchcancel() { console.log(\"手指触摸list-item组件动作被打断,如来电提醒,弹窗\") },\n list_item_touchend() { console.log(\"手指触摸list-item组件动作结束\") },\n list_item_tap() { console.log(\"手指触摸list-item组件后马上离开\") },\n list_item_longpress() { console.log(\"list-item组件被绑定了 longpress 事件,那么当用户长按这个组件时,该事件将会被触发。\") },\n change_refresher_triggered_boolean(checked : boolean) { this.refresher_triggered_boolean = checked },\n change_refresher_enabled_boolean(checked : boolean) { this.refresher_enabled_boolean = checked },\n change_scroll_with_animation_boolean(checked : boolean) { this.scroll_with_animation_boolean = checked },\n change_show_scrollbar_boolean(checked : boolean) { this.show_scrollbar_boolean = checked },\n change_bounces_boolean(checked : boolean) { this.bounces_boolean = checked },\n change_scroll_y_boolean(checked : boolean) {\n this.scroll_y_boolean = checked\n this.change_scroll_direction()\n },\n change_scroll_x_boolean(checked : boolean) {\n this.scroll_x_boolean = checked\n this.change_scroll_direction()\n },\n change_scroll_direction() {\n if (this.scroll_y_boolean && this.scroll_x_boolean || this.scroll_y_boolean) {\n this.scroll_direction = \"vertical\"\n } else if (!this.scroll_y_boolean && !this.scroll_x_boolean) {\n this.scroll_direction = \"none\"\n } else if (!this.scroll_y_boolean && this.scroll_x_boolean) {\n this.scroll_direction = \"horizontal\"\n }\n },\n confirm_upper_threshold_input(value : number) { this.upper_threshold_input = value },\n confirm_lower_threshold_input(value : number) { this.lower_threshold_input = value },\n confirm_scroll_top_input(value : number) { this.scroll_top_input = value },\n confirm_scroll_left_input(value : number) { this.scroll_left_input = value },\n confirm_refresher_background_input(value : string) { this.refresher_background_input = value },\n item_change_size_enum(index : number) { this.scrollIntoView = \"item---\" + index },\n // 自动化测试专用(由于事件event参数对象中存在循环引用,在ios端JSON.stringify报错,自动化测试无法page.data获取)\n checkEventTest(e:ScrollEventTest, eventName:String){\n const isPass = e.type === eventName && e.target instanceof UniElement && e.currentTarget instanceof UniElement;\n const result = isPass ? `${eventName}:Success` : `${eventName}:Fail`;\n switch (eventName){\n case 'scroll':\n this.isScrollTest = result\n break;\n case 'scrolltolower':\n this.isScrolltolowerTest = result + `-${e.direction}`\n break;\n case 'scrolltoupper':\n this.isScrolltoupperTest = result + `-${e.direction}`\n break;\n default:\n break;\n }\n },\n //自动化测试例专用\n check_scroll_height() : Boolean {\n var listElement = this.$refs[\"listview\"] as UniElement\n console.log(\"check_scroll_height--\" + listElement.scrollHeight)\n if (listElement.scrollHeight > 2000) {\n return true\n }\n return false\n },\n //自动化测试例专用\n check_scroll_width() : Boolean {\n var listElement = this.$refs[\"listview\"] as UniElement\n console.log(\"check_scroll_width\" + listElement.scrollWidth)\n if (listElement.scrollWidth > 2000) {\n return true\n }\n return false\n },\n change_refresher_style_boolean(checked : boolean) {\n if (checked) {\n this.refresher_default_style_input = \"none\"\n } else {\n this.refresher_default_style_input = \"black\"\n }\n }\n }\n }\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.02 | 3.9 | 4.11 |\n","children":"### 子组件 @children-tags \n - [list-item](#list-item)\n- [sticky-header](https://uniapp.dcloud.net.cn/uni-app-x/component/sticky.html#sticky-header)\n- [sticky-section](https://uniapp.dcloud.net.cn/uni-app-x/component/sticky.html#sticky-section)","reference":"\n### 参见\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.list-view)\n"},"navigator":{"name":"## navigator","description":"> 组件类型:UniNavigatorElement \n\n 页面链接","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| target | string | - | | 在哪个目标上发生跳转,默认当前应用 |\n| url | string([string.PageURIString](/uts/data-type.md#ide-string)) | - | | 当前应用内的跳转链接 |\n| open-type | string | \"navigate\" | | 跳转方式 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| navigate | | 对应 uni.navigateTo 或 navigateToMiniProgram 的功能 |\n@| redirect | | 对应 uni.redirectTo 的功能 |\n@| switchTab | | 对应 uni.switchTab 的功能 |\n@| reLaunch | | 对应 uni.reLaunch 的功能 |\n@| navigateBack | | 对应 uni.navigateBack 的功能 |\n| delta | number | - | | 当 open-type 为 navigateBack 时有效,表示回退的层数 |\n| app-id | string | - | - | 当target=\"miniProgram\"时有效,要打开的小程序 appId |\n| path | string | - | | 当target=\"miniProgram\"时有效,打开的页面路径,如果为空则打开首页 |\n| extra-data | object | - | - | 当target=\"miniProgram\"时有效,需要传递给目标应用的数据,目标应用可在 App.onLaunch(),App.onShow() 中获取到这份数据 |\n| version | string | - | - | 当target=\"miniProgram\"时有效,要打开的小程序版本,有效值 develop(开发版),trial(体验版),release(正式版),仅在当前小程序为开发版或体验版时此参数有效;如果当前小程序是体验版或正式版,则打开的小程序必定是正式版 |\n| animation-type | string | \"pop-in/out\" | | 当 open-type=\"navigateTo\" 或 open-type=\"navigateBack\" 时有效,窗口的显示/关闭的动画类型。 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| auto | - | 自动选择动画效果 |\n@| none | - | 无动画效果 |\n@| slide-in-right | - | 从右侧横向滑动效果 |\n@| slide-in-left | - | 左侧横向滑动效果 |\n@| slide-in-top | - | 从上侧竖向滑动效果 |\n@| slide-in-bottom | - | 从下侧竖向滑动效果 |\n@| fade-in | - | 从透明到不透明逐渐显示效果 |\n@| zoom-out | - | 从小到大逐渐放大显示效果 |\n@| zoom-fade-out | - | 从小到大逐渐放大并且从透明到不透明逐渐显示效果 |\n@| pop-in | - | 从右侧平移入栈动画效果 |\n@| slide-out-right | - | 横向向右侧滑出屏幕动画 |\n@| slide-out-left | - | 横向向左侧滑出屏幕动画 |\n@| slide-out-top | - | 竖向向上侧滑出屏幕动画 |\n@| slide-out-bottom | - | 竖向向下侧滑出屏幕动画 |\n@| fade-out | - | 从不透明到透明逐渐隐藏动画 |\n@| zoom-in | - | 从大逐渐缩小关闭动画 |\n@| zoom-fade-in | - | 从大逐渐缩小并且从不透明到透明逐渐隐藏关闭动画 |\n@| pop-out | - | 从右侧平移出栈动画效果 |\n| animation-duration | number | 300 | | 当 open-type=\"navigateTo\" 或 open-type=\"navigateBack\" 时有效,窗口的显示/关闭动画的持续时间。 |\n| hover-class | string | - | - | 指定按下去的样式类。当 hover-class=\"none\" 时,没有点击态效果 |\n| hover-stop-propagation | boolean | - | - | 指定是否阻止本节点的祖先节点出现点击态 |\n| hover-start-time | number | - | - | 按住后多久出现点击态,单位毫秒 |\n| hover-stay-time | number | - | - | 手指松开后点击态保留时间,单位毫秒 |\n| render-link | boolean | true | | 是否给 navigator 组件加一层 a 标签控制 ssr 渲染 |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/navigator/navigator.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/navigator/navigator\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'navigator'\n }\n }\n }\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/navigator)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/navigator.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.navigator)\n"},"picker-view-column":{"name":"## picker-view-column","description":"仅可放置于 picker-view 中,其子节点未继承 picker-view 的选中框的高度,需要自己设置高度并居中","attribute":"","event":"","example":"","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/component/picker-view.html#picker-view-column)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/picker-view.html)\n"},"picker-view":{"name":"## picker-view","description":"> 组件类型:UniPickerViewElement \n\n 嵌入页面的滚动选择器","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| value | array\\ | - | | picker-view-column 选择的第几项 |\n| indicator-style | string([string.CSSString](/uts/data-type.md#ide-string)) | - | | 设置选择器中间选中框的样式 |\n| indicator-class | string([string.ClassString](/uts/data-type.md#ide-string)) | - | | 设置选择器中间选中框的类名 |\n| mask-style | string([string.CSSString](/uts/data-type.md#ide-string)) | - | | 设置蒙层的样式 |\n| mask-top-style | string([string.CSSString](/uts/data-type.md#ide-string)) | - | | 设置蒙层上半部分的样式 |\n| mask-bottom-style | string([string.CSSString](/uts/data-type.md#ide-string)) | - | | 设置蒙层下半部分的样式 |\n| mask-class | string([string.ClassString](/uts/data-type.md#ide-string)) | - | | 设置蒙层的类名 |\n| @change | (event: [UniPickerViewChangeEvent](#unipickerviewchangeevent)) => void | - | | 当滚动选择,value 改变时触发 change 事件,event.detail = {value: value};value为数组,表示 picker-view 内的 picker-view-column 当前选择的是第几项(下标从 0
\t\t开始) |","event":"\n### 事件\n#### UniPickerViewChangeEvent\n\n##### UniPickerViewChangeEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniPickerViewChangeEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| value | Array\\ | 是 | - | - | - |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniPickerViewChangeEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/picker-view/picker-view.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/picker-view/picker-view\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\n import { state, setEventCallbackNum } from '@/store/index.uts'\r\n export default {\r\n data() {\r\n const date = new Date()\r\n const _years : number[] = []\r\n const _year = date.getFullYear()\r\n const _months : number[] = []\r\n const _month : number = date.getMonth() + 1\r\n const _days : number[] = []\r\n const _day = date.getDate()\r\n for (let i = 2000; i <= _year; i++) {\r\n _years.push(i)\r\n }\r\n for (let i = 1; i <= 12; i++) {\r\n _months.push(i)\r\n }\r\n for (let i = 1; i <= 31; i++) {\r\n _days.push(i)\r\n }\r\n return {\r\n title: 'picker-view',\r\n years: _years as number[],\r\n year: _year as number,\r\n months: _months as number[],\r\n month: _month as number,\r\n days: _days as number[],\r\n day: _day as number,\r\n value: [_year - 2000, _month - 1, _day - 1] as number[],\r\n result: [] as number[],\r\n indicatorStyle: 'height: 50px;',\r\n maskTopStyle: '',\r\n maskBottomStyle: ''\r\n }\r\n },\r\n methods: {\n // 自动化测试\n getEventCallbackNum() : number {\n return state.eventCallbackNum\n },\n // 自动化测试\n setEventCallbackNum(num : number) {\n setEventCallbackNum(num)\n },\r\n bindChange(e : UniPickerViewChangeEvent) {\n // 自动化测试\n console.log(e.target?.tagName,e.type);\n if ((e.target?.tagName ?? '').includes('PICKER-VIEW')) {\n this.setEventCallbackNum(state.eventCallbackNum + 1)\n }\n if (e.type === 'change') {\n this.setEventCallbackNum(state.eventCallbackNum + 2)\n }\n\r\n const val = e.detail.value\r\n this.result = val\r\n this.year = this.years[val[0]]\r\n this.month = this.months[val[1]]\r\n this.day = this.days[val[2]]\r\n },\r\n setValue() {\r\n this.value = [0, 0, 0] as number[]\r\n },\r\n setValue1() {\r\n this.value = [10, 10, 10] as number[]\r\n },\r\n }\r\n }\r\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"### 子组件 @children-tags \n - [picker-view-column](#picker-view-column)","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/picker-view)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/picker-view.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.picker-view)\n"},"progress":{"name":"## progress","description":"> 组件类型:UniProgressElement \n\n 进度条","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| duration | number | 30 | | 进度增加1%所需毫秒数 |\n| percent | number | 0 | | 百分比0~100 |\n| show-info | boolean | false | | 在进度条右侧显示百分比 |\n| border-radius | number | 0 | | 圆角大小 |\n| font-size | number | 16 | | 右侧百分比字体大小 |\n| stroke-width | number | 6 | | 进度条线的宽度,单位px |\n| activeColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#09BB07\" | | 已选择的进度条的颜色 |\n| backgroundColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#EBEBEB\" | | 未选择的进度条的颜色 |\n| active | boolean | false | | 进度条从左往右的动画 |\n| active-mode | string | \"backwards\" | | backwards: 动画从头播;forwards:动画从上次结束点接着播 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| backwards | | 动画从头播 |\n@| forwards | | 动画从上次结束点接着播 |\n| @activeend | (event: [UniProgressActiveendEvent](#uniprogressactiveendevent)) => void | - | | 动画完成事件 |","event":"\n### 事件\n#### UniProgressActiveendEvent\n\n##### UniProgressActiveendEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniProgressActiveendEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| curPercent | number | 是 | - | - | - |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniProgressActiveendEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/progress/progress.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/progress/progress\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n import { state, setEventCallbackNum } from '@/store/index.uts'\r\n import { ItemType } from '@/components/enum-data/enum-data'\r\n export default {\r\n data() {\r\n return {\r\n title: 'progress',\r\n pgList: [0, 0, 0, 0] as number[],\r\n curPercent: 0,\r\n showInfo: true,\r\n borderRadius: 0,\r\n fontSize: 16,\r\n strokeWidth: 3,\r\n backgroundColor: '#EBEBEB',\r\n\r\n // 组件属性 autotest\r\n active_boolean: false,\r\n show_info_boolean: false,\r\n duration_input: 30,\r\n percent_input: 0,\r\n stroke_width_input: 6,\r\n activeColor_input: \"#09BB07\",\r\n backgroundColor_input: \"#EBEBEB\",\r\n active_mode_enum: [{ \"value\": 0, \"name\": \"backwards\" }, { \"value\": 1, \"name\": \"forwards\" }] as ItemType[],\r\n active_mode_enum_current: 0\r\n }\r\n },\r\n methods: {\r\n // 自动化测试\r\n getEventCallbackNum() : number {\r\n return state.eventCallbackNum\r\n },\r\n // 自动化测试\r\n setEventCallbackNum(num : number) {\r\n setEventCallbackNum(num)\r\n },\r\n\r\n setProgress() {\r\n this.pgList = [20, 40, 60, 80] as number[]\r\n },\r\n clearProgress() {\r\n this.pgList = [0, 0, 0, 0] as number[]\r\n },\r\n activeend(e : UniProgressActiveendEvent) {\r\n // 自动化测试\r\n if ((e.target?.tagName ?? '').includes('PROGRESS')) {\r\n this.setEventCallbackNum(state.eventCallbackNum + 1)\r\n }\r\n if (e.type === 'activeend') {\r\n this.setEventCallbackNum(state.eventCallbackNum + 2)\r\n }\r\n this.curPercent = e.detail.curPercent\r\n },\r\n progress_touchstart() { console.log(\"手指触摸动作开始\") },\r\n progress_touchmove() { console.log(\"手指触摸后移动\") },\r\n progress_touchcancel() { console.log(\"手指触摸动作被打断,如来电提醒,弹窗\") },\r\n progress_touchend() { console.log(\"手指触摸动作结束\") },\r\n progress_tap() { console.log(\"手指触摸后马上离开\") },\r\n change_active_boolean(checked : boolean) { this.active_boolean = checked },\r\n change_show_info_boolean(checked : boolean) { this.show_info_boolean = checked },\r\n confirm_duration_input(value : number) { this.duration_input = value },\r\n confirm_percent_input(value : number) { this.percent_input = value },\r\n confirm_stroke_width_input(value : number) { this.stroke_width_input = value },\r\n confirm_activeColor_input(value : string) { this.activeColor_input = value },\r\n confirm_backgroundColor_input(value : string) { this.backgroundColor_input = value },\r\n radio_change_active_mode_enum(checked : number) { this.active_mode_enum_current = checked }\r\n }\r\n }\r\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/progress)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/progress.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.progress)\n"},"radio":{"name":"## radio","description":"> 组件类型:UniRadioElement \n\n 单选项。在1组radio-group中只能选中1个","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| disabled | boolean | false | | 是否禁用 |\n| value | string | - | | \\ 标识。当该radio 选中时,radio-group的 change 事件会携带radio的value |\n| checked | boolean | false | | \\ 当前是否选中 |\n| ~~color~~ | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#007AFF\" | | radio的颜色 (使用foreColor替代) |\n| backgroundColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#ffffff\" | | radio默认的背景颜色 |\n| borderColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#d1d1d1\" | | radio默认的边框颜色 |\n| activeBackgroundColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#007AFF\" | | radio选中时的背景颜色,优先级大于color属性 |\n| activeBorderColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"\" | | radio选中时的边框颜色 |\n| ~~iconColor~~ | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#ffffff\" | | radio的图标颜色 (使用foreColor替代) |\n| foreColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#ffffff\" | | radio的图标颜色 |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/radio/radio.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/radio/radio\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n type ItemType = {\r\n value : string\r\n name : string\r\n }\r\n export default {\r\n data() {\r\n return {\r\n items: [\r\n {\r\n value: 'CHN',\r\n name: '中国',\r\n },\r\n {\r\n value: 'USA',\r\n name: '美国',\r\n },\r\n\r\n {\r\n value: 'BRA',\r\n name: '巴西',\r\n },\r\n {\r\n value: 'JPN',\r\n name: '日本',\r\n },\r\n {\r\n value: 'ENG',\r\n name: '英国',\r\n },\r\n {\r\n value: 'FRA',\r\n name: '法国',\r\n },\r\n ] as ItemType[],\r\n current: 0,\r\n eventTest: false,\r\n\r\n value: '',\r\n text: '未选中',\r\n wrapText: 'uni-app x,终极跨平台方案\\nuts,大一统语言',\r\n disabled: true,\r\n checked: true,\r\n color: '#007aff',\r\n // 组件属性 autotest\r\n checked_boolean: false,\r\n disabled_boolean: false,\r\n color_input: \"#007AFF\",\r\n backgroundColor_input: \"#ffffff\",\r\n borderColor_input: \"#d1d1d1\",\r\n activeBackgroundColor_input: \"#007AFF\",\r\n activeBorderColor_input: \"\",\r\n iconColor_input: \"#ffffff\"\r\n }\r\n },\r\n\r\n methods: {\r\n radioChange(e : UniRadioGroupChangeEvent) {\r\n\r\n // 自动化测试\r\n console.log('test: radio event detail', e.target?.tagName, e.type)\r\n if ((e.target?.tagName ?? '') == 'RADIO-GROUP' && e.type == 'change') {\r\n this.eventTest = true\r\n }\r\n\r\n const selected = this.items.find((item) : boolean => {\r\n return item.value == e.detail.value\r\n })\r\n uni.showToast({\r\n icon: 'none',\r\n title: '当前选中:' + selected?.name,\r\n })\r\n },\r\n testChange(e : UniRadioGroupChangeEvent) {\r\n\r\n this.value = e.detail.value\r\n },\r\n radio_click() { console.log(\"组件被点击时触发\") },\r\n radio_touchstart() { console.log(\"手指触摸动作开始\") },\r\n radio_touchmove() { console.log(\"手指触摸后移动\") },\r\n radio_touchcancel() { console.log(\"手指触摸动作被打断,如来电提醒,弹窗\") },\r\n radio_touchend() { console.log(\"手指触摸动作结束\") },\r\n radio_tap() { console.log(\"手指触摸后马上离开\") },\r\n radio_longpress() { console.log(\"如果一个组件被绑定了 longpress 事件,那么当用户长按这个组件时,该事件将会被触发。\") },\r\n change_checked_boolean(checked : boolean) { this.checked_boolean = checked },\r\n change_disabled_boolean(checked : boolean) { this.disabled_boolean = checked },\r\n confirm_color_input(value : string) { this.color_input = value },\r\n confirm_backgroundColor_input(value : string) { this.backgroundColor_input = value },\r\n confirm_borderColor_input(value : string) { this.borderColor_input = value },\r\n confirm_activeBackgroundColor_input(value : string) { this.activeBackgroundColor_input = value },\r\n confirm_activeBorderColor_input(value : string) { this.activeBorderColor_input = value },\r\n confirm_iconColor_input(value : string) { this.iconColor_input = value }\r\n }\r\n }\r\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/radio)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/radio-group.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.radio)\n"},"radio-group":{"name":"## radio-group","description":"> 组件类型:UniRadioGroupElement \n\n 单选框组","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| name | string | - | | 表单的控件名称,作为键值对的一部分与表单(form组件)一同提交 |\n| @change | (event: [UniRadioGroupChangeEvent](#uniradiogroupchangeevent)) => void | - | | radio-group 中的选中项发生变化时触发 change 事件,event.detail = {value: 选中项radio的value} |","event":"\n### 事件\n#### UniRadioGroupChangeEvent\n\n##### UniRadioGroupChangeEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniRadioGroupChangeEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| value | string | 是 | - | - | - |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniRadioGroupChangeEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"### 子组件 @children-tags \n - [radio](#radio)","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/radio)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/radio-group.html)\n"},"form":{"name":"## form","description":"> 组件类型:UniFormElement \n\n 表单","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| disabled | boolean | - | | 是否禁用 |\n| report-submit | boolean | - | | 是否返回 formId 用于发送模板消息 |\n| @submit | (event: [UniFormSubmitEvent](#uniformsubmitevent)) => void | - | | 携带 form 中的数据触发 submit 事件,event.detail = {value : {'name': 'value'}} |\n| @reset | (event: [UniFormResetEvent](#uniformresetevent)) => void | - | | 表单重置时会触发 reset 事件 |","event":"\n### 事件\n#### UniFormSubmitEvent\n\n##### UniFormSubmitEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniFormSubmitEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| value | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) | 是 | - | - | - |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniFormSubmitEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniFormResetEvent\n\n##### UniFormResetEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | UniFormResetEventDetail | 是 | - | - | - |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniFormResetEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/form/form.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/form/form\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n nickname: '',\n gender: '0',\n age: 18,\n loves: ['0'],\n switch: true,\n comment:'',\n formData: {} as UTSJSONObject\n }\n },\n computed: {\n formDataText() : string {\n return JSON.stringify(this.formData)\n }\n },\n methods: {\n onFormSubmit: function (e : UniFormSubmitEvent) {\n this.formData = e.detail.value\n },\n onFormReset: function (_ : UniFormResetEvent) {\n this.formData = {}\n }\n }\n }\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.97 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/form)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/form.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.form)\n"},"rich-text":{"name":"## rich-text","description":"> 组件类型:UniRichTextElement \n\n 富文本。可渲染文字样式、图片、超链接。支持部分HTML标签","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| nodes | array \\| string | - | | 节点列表 \\| HTML String |\n| selectable | boolean | false | | 文本是否可选 |\n| @itemclick | (event: [UniRichTextItemClickEvent](#unirichtextitemclickevent)) => void | - | | 拦截点击事件(只支持 a、img标签),返回用户自定义数据或img标签的src属性或a标签的href属性。event.detail={ ref \\| src \\| href } |","event":"\n### 事件\n#### UniRichTextItemClickEvent\n\n##### UniRichTextItemClickEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniRichTextItemClickEventDetail** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| ref | string \\| null | 否 | - | - | 自定义数据 |\n@| src | string \\| null | 否 | - | - | \\图片链接 |\n@| href | string \\| null | 否 | - | - | \\超链接 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniRichTextItemClickEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/rich-text/rich-text.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/rich-text/rich-text\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"### 子组件 @children-tags \n 不可以嵌套组件","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/rich-text)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/rich-text.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.rich-text)\n"},"scroll-view":{"name":"## scroll-view","description":"> 组件类型:UniScrollViewElement \n\n 可滚动视图容器","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| type | string | - | | 渲染模式,可取值 nested |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| nested | | 嵌套模式。用于处理父子 scroll-view 间的嵌套滚动,子节点只能是 nested-scroll-header nested-scroll-body 组件或自定义 refresher |\n| direction | string | \"vertical\" | | 滚动方向,可取值 none、all、horizontal、vertical,默认值vertical |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| none | | 禁止滚动 |\n@| all | | 横向竖向都可滚动 app端不支持 |\n@| horizontal | | 横向滚动 |\n@| vertical | | 竖向滚动 |\n| ~~scroll-x~~ | boolean | false | | 允许横向滚动,不支持同时设置scroll-y属性为true,同时设置true时scroll-y生效。已废弃,请改用direction |\n| ~~scroll-y~~ | boolean | true | | 允许纵向滚动,不支持同时设置scroll-x属性为true,同时设置true时scroll-y生效。已废弃,请改用direction |\n| ~~rebound~~ | boolean | true | | 控制是否回弹效果。已废弃,请改用bounces |\n| associative-container | string | \"\" | | 关联的滚动容器 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| nested-scroll-view | | 嵌套滚动 |\n| enable-back-to-top | boolean | false | | iOS点击顶部状态栏滚动条返回顶部,只支持竖向 |\n| bounces | boolean | true | | 控制是否回弹效果 优先级高于rebound |\n| upper-threshold | number | 50 | | 距顶部/左边多远时(单位px),触发 scrolltoupper 事件 |\n| lower-threshold | number | 50 | | 距底部/右边多远时(单位px),触发 scrolltolower 事件 |\n| scroll-top | number | 0 | | 设置竖向滚动条位置 |\n| scroll-left | number | 0 | | 设置横向滚动条位置 |\n| scroll-into-view | string([string.IDString](/uts/data-type.md#ide-string)) | - | | 值应为某子元素id(id不能以数字开头)。设置哪个方向可滚动,则在哪个方向滚动到该元素起始位置 |\n| scroll-with-animation | boolean | false | | 是否在设置滚动条位置时使用滚动动画,设置false没有滚动动画 |\n| refresher-enabled | boolean | false | | 开启下拉刷新,暂时不支持scroll-x = true横向刷新 |\n| refresher-threshold | number | 45 | | 设置下拉刷新阈值 |\n| refresher-max-drag-distance | number | - | | 设置下拉最大拖拽距离(单位px),默认是下拉刷新控件高度的2.5倍 |\n| refresher-default-style | string | \"black\" | | 设置下拉刷新默认样式,支持设置 black \\| white \\| none, none 表示不使用默认样式 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| black | | 深颜色雪花样式 |\n@| white | | 浅白色雪花样式 |\n@| none | | 不使用默认样式 |\n| refresher-background | string([string.ColorString](/uts/data-type.md#ide-string)) | \"transparent\" | | 设置下拉刷新区域背景颜色,默认透明 |\n| refresher-triggered | boolean | false | | 设置当前下拉刷新状态,true 表示下拉刷新已经被触发,false 表示下拉刷新未被触发 |\n| show-scrollbar | boolean | true | | 控制是否出现滚动条 |\n| custom-nested-scroll | boolean | false | | 子元素是否开启嵌套滚动 将滚动事件与父元素协商处理 |\n| nested-scroll-child | string([string.IDString](/uts/data-type.md#ide-string)) | \"\" | | 嵌套滚动子元素的id属性,不支持ref,scroll-view惯性滚动时会让对应id元素视图进行滚动,子元素滚动时会触发scroll-view的nestedprescroll事件,嵌套子元素需要设置custom-nested-scroll = true |\n| @refresherpulling | (event: [UniRefresherEvent](#unirefresherevent)) => void | - | | 下拉刷新控件被下拉 |\n| @refresherrefresh | (event: [UniRefresherEvent](#unirefresherevent)) => void | - | | 下拉刷新被触发 |\n| @refresherrestore | (event: [UniRefresherEvent](#unirefresherevent)) => void | - | | 下拉刷新被复位 |\n| @refresherabort | (event: [UniRefresherEvent](#unirefresherevent)) => void | - | | 下拉刷新被中止 |\n| @scrolltoupper | (event: [UniScrollToUpperEvent](#uniscrolltoupperevent)) => void | - | | 滚动到顶部/左边,会触发 scrolltoupper 事件 |\n| @scrolltolower | (event: [UniScrollToLowerEvent](#uniscrolltolowerevent)) => void | - | | 滚动到底部/右边,会触发 scrolltolower 事件 |\n| @scroll | (event: [UniScrollEvent](#uniscrollevent)) => void | - | | 滚动时触发,event.detail = {scrollLeft, scrollTop, scrollHeight, scrollWidth, deltaX, deltaY} |\n| @scrollend | (event: [UniScrollEvent](#uniscrollevent)) => void | - | | 滚动结束时触发,event.detail = {scrollLeft, scrollTop, scrollHeight, scrollWidth, deltaX, deltaY} |\n| @startnestedscroll | (event: [UniStartNestedScrollEvent](#unistartnestedscrollevent)) => Boolean | - | | 子元素开始滚动时触发, return true表示与子元素开启滚动协商 默认return false! event = {node} |\n| @nestedprescroll | (event: [UniNestedPreScrollEvent](#uninestedprescrollevent)) => void | - | | 子元素滚动时触发,可执行event.consumed(x,y)告知子元素deltaX、deltaY各消耗多少。子元素将执行差值后的deltaX、deltaY滚动距离。不执行consumed(x,y)则表示父元素不消耗deltaX、deltaY。event = {deltaX, deltaY} |\n| @stopnestedscroll | (event: [UniStopNestedScrollEvent](#unistopnestedscrollevent)) => void | - | | 子元素滚动结束或意外终止时触发 |","event":"\n### 事件\n#### UniRefresherEvent\n\n##### UniRefresherEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniRefresherEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| dy | number | 是 | - | - | - |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniRefresherEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniScrollToUpperEvent\n\n##### UniScrollToUpperEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniScrollToUpperEventDetail** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| direction | string | 是 | - | - | 滚动方向 top 或 left |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniScrollToUpperEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniScrollToLowerEvent\n\n##### UniScrollToLowerEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniScrollToLowerEventDetail** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| direction | string | 是 | - | - | 滚动方向 bottom 或 right |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniScrollToLowerEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniScrollEvent\n\n##### UniScrollEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniScrollEventDetail** | 是 | - | - | |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| scrollTop | number | 是 | - | - | 竖向滚动的距离 |\n@| scrollLeft | number | 是 | - | - | 横向滚动的距离 |\n@| scrollHeight | number | 是 | - | - | 滚动区域的高度 |\n@| scrollWidth | number | 是 | - | - | 滚动区域的宽度 |\n@| deltaY | number | 是 | - | - | 当次滚动事件竖向滚动量 |\n@| deltaX | number | 是 | - | - | 当次滚动事件横向滚动量 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniScrollEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniStartNestedScrollEvent\n\n##### UniStartNestedScrollEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| node | [UniElement](/dom/unielement.md) | 是 | - | - | 开始滚动子节点对象 |\n| isTouch | boolean | 是 | - | | 是否由触摸行为发生的Event |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniStartNestedScrollEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniNestedPreScrollEvent\n\n##### UniNestedPreScrollEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| deltaX | number | 是 | - | - | x轴滚动距离 |\n| deltaY | number | 是 | - | - | y轴滚动距离 |\n| isTouch | boolean | 是 | - | | 是否由触摸行为发生的Event |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniNestedPreScrollEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| consumed | (consumedX: number, consumedY: number) => void | 是 | - | - | 通知到子节点x,y轴滚动距离的消耗 |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniStopNestedScrollEvent\n\n##### UniStopNestedScrollEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| isTouch | boolean | 是 | - | - | 是否由触摸行为发生的Event |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniStopNestedScrollEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/scroll-view/scroll-view.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/scroll-view/scroll-view\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n type ScrollEventTest = {\n type: string;\n target: UniElement | null;\n currentTarget: UniElement | null;\n direction?:string\n }\n export default {\n data() {\n return {\n scrollTop: 0,\n oldScrollTop: 0,\n scrollLeft:120,\n showScrollbar: true,\n // 自动化测试\n isScrollTest:'',\n isScrolltolowerTest:'',\n isScrolltoupperTest:'',\n // 在web端scroll事件event参数中detail类型报错,先条件编译处理\n // #ifndef WEB\n scrollDetailTest:null as UniScrollEventDetail|null,\n scrollEndDetailTest:null as UniScrollEventDetail|null,\n // #endif\n }\n },\n methods: {\n upper: function (e : UniScrollToUpperEvent) {\n console.log('滚动到顶部/左边',e)\n this.checkEventTest({\n type:e.type,\n target:e.target,\n currentTarget:e.currentTarget,\n direction:e.detail.direction,\n } as ScrollEventTest,'scrolltoupper')\n },\n lower: function (e : UniScrollToLowerEvent) {\n console.log('滚动到底部/右边',e)\n this.checkEventTest({\n type:e.type,\n target:e.target,\n currentTarget:e.currentTarget,\n direction:e.detail.direction,\n } as ScrollEventTest,'scrolltolower')\n },\n scroll: function (e : UniScrollEvent) {\n // #ifndef WEB\n this.scrollDetailTest = e.detail\n // #endif\n this.checkEventTest({\n type:e.type,\n target:e.target,\n currentTarget:e.currentTarget\n } as ScrollEventTest,'scroll')\n this.oldScrollTop = e.detail.scrollTop\n },\n end: function (e : UniScrollEvent){\n console.log('滚动结束时触发',e)\n // #ifndef WEB\n this.scrollEndDetailTest = e.detail\n // #endif\n this.checkEventTest({\n type:e.type,\n target:e.target,\n currentTarget:e.currentTarget\n } as ScrollEventTest,'scrollend')\n },\n goTop: function () {\n // 解决view层不同步的问题\n this.scrollTop = this.oldScrollTop\n this.$nextTick(function () {\n this.scrollTop = 0\n })\n uni.showToast({\n icon: 'none',\n title: '纵向滚动 scrollTop 值已被修改为 0',\n })\n },\n // 自动化测试专用(由于事件event参数对象中存在循环引用,在ios端JSON.stringify报错,自动化测试无法page.data获取)\n checkEventTest(e:ScrollEventTest, eventName:String){\n const isPass = e.type === eventName && e.target instanceof UniElement && e.currentTarget instanceof UniElement;\n const result = isPass ? `${eventName}:Success` : `${eventName}:Fail`;\n switch (eventName){\n case 'scroll':\n this.isScrollTest = result\n break;\n case 'scrolltolower':\n this.isScrolltolowerTest = result + `-${e.direction}`\n break;\n case 'scrolltoupper':\n this.isScrolltoupperTest = result + `-${e.direction}`\n break;\n default:\n break;\n }\n },\n },\n }\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/scroll-view)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/scroll-view.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.scroll-view)\n"},"slider":{"name":"## slider","description":"> 组件类型:UniSliderElement \n\n 滑动选择器","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| name | string | - | | 表单的控件名称,作为键值对的一部分与表单(form组件)一同提交 |\n| disabled | boolean | - | | 是否禁用 |\n| min | number | 0 | | slider 最小值 |\n| max | number | 100 | | slider 最大值 |\n| step | number | 1 | | slider 步长,取值必须大于 0,并且可被(max - min)整除 |\n| value | number | 0 | | radio当前取值 |\n| activeBackgroundColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#007aff\" | | slider 滑块左侧已选择部分的线条颜色 |\n| ~~activeColor~~ | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#007aff\" | | slider 滑块左侧已选择部分的线条颜色 |\n| backgroundColor | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#e9e9e9\" | | radio背景条的颜色 |\n| block-size | number | 28 | | radio滑块的大小,取值范围为 12 - 28 |\n| ~~block-color~~ | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#ffffff\" | | 滑块颜色 (使用foreColor替代) |\n| foreColor | string([string.ColorString](/uts/data-type.md#ide-string)) | - | | slider 的滑块背景颜色 |\n| show-value | boolean | false | | 是否显示当前 value |\n| @change | (event: [UniSliderChangeEvent](#unisliderchangeevent)) => void | - | | 完成一次拖动后触发的事件,event.detail = {value: value} |\n| @changing | (event: [UniSliderChangeEvent](#unisliderchangeevent)) => void | - | | 拖动过程中触发的事件,event.detail = {value: value} |","event":"\n### 事件\n#### UniSliderChangeEvent\n\n##### UniSliderChangeEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniSliderChangeEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| value | number | 是 | - | - | - |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniSliderChangeEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/slider/slider.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/slider/slider\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n sliderValue: 50,\n sliderBlockSize: 20,\n sliderBackgroundColor: \"#000000\",\n sliderActiveColor: \"#FFCC33\",\n sliderBlockColor: \"#8A6DE9\",\n // 组件属性 autotest\n show_value_boolean: false,\n disabled_boolean: false,\n min_input: 0,\n max_input: 100,\n step_input: 1,\n value_input: 0,\n activeColor_input: \"#007aff\",\n backgroundColor_input: \"#e9e9e9\",\n block_size_input: 28,\n block_color_input: \"#ffffff\",\n };\n },\n methods: {\n sliderChange(e : UniSliderChangeEvent) {\n console.log(\"value 发生变化:\" + e.detail.value);\n },\n slider_click() {\n console.log(\"组件被点击时触发\");\n },\n slider_touchstart() {\n console.log(\"手指触摸动作开始\");\n },\n slider_touchmove() {\n console.log(\"手指触摸后移动\");\n },\n slider_touchcancel() {\n console.log(\"手指触摸动作被打断,如来电提醒,弹窗\");\n },\n slider_touchend() {\n console.log(\"手指触摸动作结束\");\n },\n slider_tap() {\n console.log(\"手指触摸后马上离开\");\n },\n slider_longpress() {\n console.log(\n \"如果一个组件被绑定了 longpress 事件,那么当用户长按这个组件时,该事件将会被触发。\"\n );\n },\n slider_change() {\n console.log(\"完成一次拖动后触发的事件,event.detail = {value: value}\");\n },\n slider_changing() {\n console.log(\"拖动过程中触发的事件,event.detail = {value: value}\");\n },\n change_show_value_boolean(checked : boolean) {\n this.show_value_boolean = checked;\n },\n change_disabled_boolean(checked : boolean) {\n this.disabled_boolean = checked;\n },\n confirm_min_input(value : number) {\n this.min_input = value;\n },\n confirm_max_input(value : number) {\n this.max_input = value;\n },\n confirm_step_input(value : number) {\n this.step_input = value;\n },\n confirm_value_input(value : number) {\n this.value_input = value;\n },\n confirm_activeColor_input(value : string) {\n this.activeColor_input = value;\n },\n confirm_backgroundColor_input(value : string) {\n this.backgroundColor_input = value;\n },\n confirm_block_size_input(value : number) {\n this.block_size_input = value;\n },\n confirm_block_color_input(value : string) {\n this.block_color_input = value;\n },\n },\n };\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/slider)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/slider.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.slider)\n"},"swiper-item":{"name":"## swiper-item","description":"> 组件类型:UniSwiperItemElement \n\n swiper的唯一合法子组件。每个swiper-item代表一个滑块。宽高自动设置为100%","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| item-id | string | - | | 该 swiper-item 的标识符 |","event":"","example":"","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.net.cn/component/swiper.html#swiper-item)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/swiper.html)\n"},"swiper":{"name":"## swiper","description":"> 组件类型:UniSwiperElement \n\n 滑块视图容器","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| indicator-dots | boolean | false | | 是否显示面板指示点 |\n| indicator-color | string([string.ColorString](/uts/data-type.md#ide-string)) | \"rgba(0, 0, 0, .3)\" | | 指示点颜色 |\n| indicator-active-color | string([string.ColorString](/uts/data-type.md#ide-string)) | \"#000000\" | | 当前选中的指示点颜色 |\n| disable-touch | boolean | false | | 是否禁止用户 touch 操作 |\n| autoplay | boolean | false | | 是否自动切换 |\n| current | number | 0 | | 当前所在滑块的 index |\n| current-item-id | string | - | | 当前所在滑块的 item-id ,不能与 current 被同时指定 |\n| interval | number | 3000 | | 自动切换时间间隔 |\n| duration | number | - | | 滑动动画时长 |\n| circular | boolean | false | | 是否采用衔接滑动 |\n| vertical | boolean | false | | 滑动方向是否为纵向 |\n| rebound | boolean | true | | 控制是否回弹效果 |\n| @change | (event: [UniSwiperChangeEvent](#uniswiperchangeevent)) => void | - | | current 改变时会触发 change 事件,event.detail = {current: current, source: source} |\n| @transition | (event: [UniSwiperTransitionEvent](#uniswipertransitionevent)) => void | - | | swiper-item 的位置发生改变时会触发 transition 事件,event.detail = {dx: dx, dy: dy} |\n| @animationfinish | (event: [UniSwiperAnimationFinishEvent](#uniswiperanimationfinishevent)) => void | - | | 动画结束时会触发 animationfinish 事件,event.detail = {current: current, source: source} |","event":"\n### 事件\n#### UniSwiperChangeEvent\n\n##### UniSwiperChangeEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniSwiperChangeEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| current | number | 是 | - | - | 发生change事件的滑块下标 |\n@| currentItemId | string | 否 | - | | 切换结束的 swiper-item 的 item-id 属性值 |\n@| source | string | 是 | - | - | autoplay 自动播放导致swiper变化;touch 用户划动引起swiper变化 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniSwiperChangeEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniSwiperTransitionEvent\n\n##### UniSwiperTransitionEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniSwiperTransitionEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| dx | number | 是 | - | - | 横向偏移量,单位是逻辑像素px |\n@| dy | number | 是 | - | - | 纵向偏移量,单位是逻辑像素px |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniSwiperTransitionEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniSwiperAnimationFinishEvent\n\n##### UniSwiperAnimationFinishEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniSwiperAnimationFinishEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| current | number | 是 | - | - | 发生动画结束事件的滑块下标 |\n@| currentItemId | string | 否 | - | | 动画结束的 swiper-item 的 item-id 属性值 |\n@| source | string | 是 | - | - | autoplay 自动播放导致swiper变化;touch 用户划动引起swiper变化 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniSwiperAnimationFinishEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/swiper/swiper.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/swiper/swiper\n>Template\n```vue\n\r\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\n type SwiperEventTest = {\n type: string;\n target: UniElement | null;\n currentTarget: UniElement | null;\n }\r\n export default {\r\n data() {\r\n return {\r\n background: ['color1', 'color2', 'color3'],\r\n dotsSelect: false,\r\n reboundSelect: false,\r\n autoplaySelect: false,\r\n circularSelect: false,\r\n indicatorColorSelect: false,\r\n verticalSelect: false,\r\n currentSelect: false,\r\n currentItemIdSelect: false,\r\n intervalSelect: 2000,\r\n indicatorColor: \"\",\r\n indicatorColorActive: \"\",\r\n currentVal: 0,\r\n currentItemIdVal: \"\",\r\n disableTouchSelect: false,\r\n swiperTransitionSelect: false,\r\n swiperAnimationfinishSelect: false,\r\n swiperChangeSelect: false,\r\n currentValChange: 0,\n // 自动化测试\n // 在android端以下事件event参数中detail类型报错,先条件编译处理\n // #ifndef APP-ANDROID\n changeDetailTest:null as UniSwiperChangeDetail | null,\n transitionDetailTest:null as UniSwiperTransitionDetail | null,\n animationfinishDetailTest:null as UniSwiperAnimationFinishDetail | null,\n // #endif\n isChangeTest:'',\n isTransitionTest:'',\n isAnimationfinishTest:''\n }\r\n },\n methods: {\r\n swiperChange: function (e : UniSwiperChangeEvent) {\n // #ifndef APP-ANDROID\n this.changeDetailTest = e.detail\n // #endif\n this.checkEventTest({\n type:e.type,\n target:e.target,\n currentTarget:e.currentTarget\n } as SwiperEventTest,'change')\n this.currentValChange = e.detail.current\r\n console.log(this.currentValChange)\r\n if (this.swiperChangeSelect) {\r\n console.log(\"swiperChange\")\r\n console.log(e)\r\n }\r\n },\r\n swiperTransition: function (e : UniSwiperTransitionEvent) {\n // #ifndef APP-ANDROID\n this.transitionDetailTest = e.detail\n // #endif\n this.checkEventTest({\n type:e.type,\n target:e.target,\n currentTarget:e.currentTarget\n } as SwiperEventTest,'transition')\n if (this.swiperTransitionSelect) {\r\n console.log(\"swiperTransition\")\r\n console.log(e)\r\n }\r\n },\r\n swiperAnimationfinish: function (e : UniSwiperAnimationFinishEvent) {\n // #ifndef APP-ANDROID\n this.animationfinishDetailTest = e.detail\n // #endif\n this.checkEventTest({\n type:e.type,\n target:e.target,\n currentTarget:e.currentTarget\n } as SwiperEventTest,'animationfinish')\n if (this.swiperAnimationfinishSelect) {\r\n console.log(\"swiperAnimationfinish\")\r\n console.log(e)\r\n }\r\n },\r\n // 自动化测试专用(由于事件event参数对象中存在循环引用,在ios端JSON.stringify报错,自动化测试无法page.data获取)\n checkEventTest(e:SwiperEventTest, eventName:String){\n const isPass = e.type === eventName && e.target instanceof UniElement && e.currentTarget instanceof UniElement;\n const result = isPass ? `${eventName}:Success` : `${eventName}:Fail`;\n switch (eventName){\n case 'change':\n this.isChangeTest = result\n break;\n case 'transition':\n this.isTransitionTest = result\n break;\n case 'animationfinish':\n this.isAnimationfinishTest = result\n break;\n default:\n break;\n }\n },\r\n dotsChange: function (e : UniSwitchChangeEvent) {\r\n this.dotsSelect = e.detail.value\r\n },\r\n swiperTransitionChange: function (e : UniSwitchChangeEvent) {\r\n this.swiperTransitionSelect = e.detail.value\r\n },\r\n swiperChangeChange: function (e : UniSwitchChangeEvent) {\r\n this.swiperChangeSelect = e.detail.value\r\n },\r\n swiperAnimationfinishChange: function (e : UniSwitchChangeEvent) {\r\n this.swiperAnimationfinishSelect = e.detail.value\r\n },\r\n autoplayChange: function (e : UniSwitchChangeEvent) {\n this.autoplaySelect = e.detail.value\r\n },\r\n verticalChange: function (e : UniSwitchChangeEvent) {\r\n this.verticalSelect = e.detail.value\r\n },\r\n disableTouchChange: function (e : UniSwitchChangeEvent) {\r\n this.disableTouchSelect = e.detail.value\r\n },\r\n currentItemIdChange: function (e : UniSwitchChangeEvent) {\r\n this.currentItemIdSelect = e.detail.value\r\n if (this.currentItemIdSelect) {\r\n this.currentItemIdVal = 'C'\r\n } else {\r\n this.currentItemIdVal = 'A'\r\n }\r\n },\r\n currentChange: function (e : UniSwitchChangeEvent) {\r\n this.currentSelect = e.detail.value\r\n if (this.currentSelect) {\r\n this.currentVal = 2\r\n } else {\r\n this.currentVal = 0\r\n }\r\n\r\n },\r\n circularChange: function (e : UniSwitchChangeEvent) {\r\n this.circularSelect = e.detail.value\r\n console.log(this.circularSelect)\r\n },\r\n reboundSelectChange: function (e : UniSwitchChangeEvent) {\r\n this.reboundSelect = e.detail.value\r\n console.log(this.reboundSelect)\r\n },\r\n sliderChange(e : UniSliderChangeEvent) {\r\n this.intervalSelect = e.detail.value\r\n },\r\n indicatorColorChange(e : UniSwitchChangeEvent) {\r\n this.indicatorColorSelect = e.detail.value\r\n if (this.indicatorColorSelect) {\r\n // 选择了定制指示器颜色\r\n this.indicatorColor = \"#ff00ff\"\r\n this.indicatorColorActive = \"#0000ff\"\r\n } else {\r\n // 没有选择颜色\r\n this.indicatorColor = \"\"\r\n this.indicatorColorActive = \"\"\r\n }\r\n }\r\n }\r\n }\r\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"### 子组件 @children-tags \n - [swiper-item](#swiper-item)","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/swiper)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/swiper.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.swiper)\n"},"switch":{"name":"## switch","description":"> 组件类型:UniSwitchElement \n\n 开关选择器","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| name | string | - | | 表单的控件名称,作为键值对的一部分与表单(form组件)一同提交 |\n| checked | boolean | - | | 是否选中 |\n| type | string | - | | 样式,有效值:switch, checkbox |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| switch | | - |\n@| checkbox | | - |\n| ~~color~~ | string([string.ColorString](/uts/data-type.md#ide-string)) | - | | switch 的颜色,同 css 的 color (使用foreColor替代) |\n| backgroundColor | string([string.ColorString](/uts/data-type.md#ide-string)) | - | | switch 的关闭状态背景颜色 |\n| activeBackgroundColor | string([string.ColorString](/uts/data-type.md#ide-string)) | - | | switch 的开启状态背景颜色 |\n| foreColor | string([string.ColorString](/uts/data-type.md#ide-string)) | - | | switch 的滑块背景颜色 |\n| activeForeColor | string([string.ColorString](/uts/data-type.md#ide-string)) | - | | switch 的开启状态下的滑块背景颜色 |\n| disabled | boolean | - | | 是否禁用 |\n| @change | (event: [UniSwitchChangeEvent](#uniswitchchangeevent)) => void | - | | checked 改变时触发 change 事件,event.detail={ value:checked} |","event":"\n### 事件\n#### UniSwitchChangeEvent\n\n##### UniSwitchChangeEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniSwitchChangeEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| value | boolean | 是 | - | - | - |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniSwitchChangeEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/switch/switch.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/switch/switch\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'switch 开关',\n checked: true,\n color: '#FFCC33',\n clickCheckedValue: true\n }\n },\n methods: {\n switch1Change: function (e : UniSwitchChangeEvent) {\n this.clickCheckedValue = e.detail.value\n console.log('switch1 发生 change 事件,携带值为', e.detail.value)\n },\n switch2Change: function (e : UniSwitchChangeEvent) {\n console.log('switch2 发生 change 事件,携带值为', e.detail.value)\n }\n }\n }\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/switch)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/switch.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.switch)\n"},"text":{"name":"## text","description":"> 组件类型:[UniTextElement](#unitextelement) \n\n 文本","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| selectable | boolean | false | | 文本是否可选 |\n| space | string | - | | 显示连续空格 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| ensp | | 中文字符空格一半大小 |\n@| emsp | | 中文字符空格大小 |\n@| nbsp | | 根据字体设置的空格大小 |\n| decode | boolean | false | | 是否解码 (app平台如需解析字符实体,需要配置为 true) |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/text/text.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/text/text\n>Template\n```vue\n\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n export default {\r\n data() {\r\n return {\r\n title: 'text',\r\n texts: [\r\n 'HBuilderX,轻巧、极速,极客编辑器',\r\n 'uni-app x,终极跨平台方案',\r\n 'uniCloud,js serverless云服务',\r\n 'uts,大一统语言',\r\n 'uniMPSdk,让你的App具备小程序能力',\r\n 'uni-admin,开源、现成的全端管理后台',\r\n 'uni-id,开源、全端的账户中心',\r\n 'uni-pay,开源、云端一体、全平台的支付',\r\n 'uni-ai,聚合ai能力',\r\n 'uni-cms,开源、云端一体、全平台的内容管理平台',\r\n 'uni-im,开源、云端一体、全平台的im即时消息',\r\n 'uni统计,开源、完善、全平台的统计报表',\r\n '......'\r\n ] as string[],\r\n text: '',\r\n canAdd: true,\r\n canRemove: false,\r\n extraLine: [] as string[]\r\n }\r\n },\r\n methods: {\r\n add: function () {\r\n this.extraLine.push(this.texts[this.extraLine.length % 12]);\r\n this.text = this.extraLine.join('\\n');\r\n this.canAdd = this.extraLine.length < 12;\r\n this.canRemove = this.extraLine.length > 0;\r\n },\r\n remove: function () {\r\n if (this.extraLine.length > 0) {\r\n this.extraLine.pop();\r\n this.text = this.extraLine.join('\\n');\r\n this.canAdd = this.extraLine.length < 12;\r\n this.canRemove = this.extraLine.length > 0;\r\n }\r\n },\r\n textProps: function () {\r\n uni.navigateTo({\r\n url: '/pages/component/text/text-props'\r\n })\r\n }\r\n }\r\n }\r\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"### 子组件 @children-tags \n - [text](#text)","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/text)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/text.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.text)\n","component_type":"### UniTextElement\ntext元素对象\n#### UniTextElement 的属性值\n| 名称 | 类型 | 必填 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| value | string | 是 | - | 只读属性 text元素的文案内容 |\n#### UniTextElement 的方法\n##### getTextExtra() @gettextextra\n\n\n###### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| any \\| null | 否 |\n \n\n###### getTextExtra 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n"},"textarea":{"name":"## textarea","description":"> 组件类型:[UniTextareaElement](#unitextareaelement) \n\n 多行输入框","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| name | string | - | | 表单的控件名称,作为键值对的一部分与表单(form组件)一同提交 |\n| value | string | \"\" | | 输入框的初始内容 |\n| placeholder | string | \"\" | | 输入框为空时占位符 |\n| placeholder-style | string | \"\" | | 指定 placeholder 的样式 |\n| placeholder-class | string([string.ClassString](/uts/data-type.md#ide-string)) | \"\" | | 指定 placeholder 的样式类,目前仅支持color,font-size和font-weight |\n| maxlength | number | \"不限制长度\" | | 最大输入长度,0和正数为合法值,非法值的时候不限制最大长度 |\n| auto-focus | boolean | false | | 自动获取焦点,与`focus`属性对比,此属性只会首次生效。 |\n| focus | boolean | false | | 获取焦点 |\n| confirm-type | return \\| send \\| search \\| next \\| go \\| done | \"return\" | | 设置键盘右下角按钮的文字 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| return | | 换行 |\n@| send | | 发送 |\n@| search | | 搜索 |\n@| next | | 下一个 |\n@| go | | 前往 |\n@| done | | 完成 |\n| cursor | number | 0 | | 指定focus时的光标位置 |\n| confirm-hold | boolean | false | | 点击键盘右下角按钮时是否保持键盘不收起 |\n| auto-height | boolean | false | | 是否自动增高,设置auto-height时,style.height不生效 |\n| cursor-spacing | number | 0 | | 指定光标与键盘的距离,单位 px 。取 textarea 距离底部的距离和 cursor-spacing 指定的距离的最小值作为光标与键盘的距离 |\n| cursor-color | string([string.ColorString](/uts/data-type.md#ide-string)) | \"\" | | 指定光标颜色 |\n| selection-start | number | -1 | | 光标起始位置,自动聚集时有效,需与selection-end搭配使用 |\n| selection-end | number | -1 | | 光标结束位置,自动聚集时有效,需与selection-satrt搭配使用 |\n| adjust-position | boolean | true | | 键盘弹起时,是否自动上推页面 |\n| hold-keyboard | boolean | false | | focus时,点击页面的时候不收起键盘 |\n| @confirm | (event: [UniInputConfirmEvent](#uniinputconfirmevent)) => void | - | | 点击完成时, 触发 confirm 事件,event.detail = {value: value} |\n| @input | (event: [UniInputEvent](#uniinputevent)) => void | - | | 当键盘输入时,触发 input 事件,event.detail = {value, cursor}, @input 处理函数的返回值并不会反映到 textarea 上 |\n| @linechange | (event: [UniTextareaLineChangeEvent](#unitextarealinechangeevent)) => void | - | | 输入框行数变化时调用,event.detail = {height: 0, heightRpx: 0, lineCount: 0} |\n| @blur | (event: [UniTextareaBlurEvent](#unitextareablurevent)) => void | - | | 输入框失去焦点时触发,event.detail = {value, cursor} |\n| @keyboardheightchange | (event: [UniInputKeyboardHeightChangeEvent](#uniinputkeyboardheightchangeevent)) => void | - | | 键盘高度发生变化的时候触发此事件,event.detail = {height: height, duration: duration} |\n| @focus | (event: [UniTextareaFocusEvent](#unitextareafocusevent)) => void | - | | 输入框聚焦时触发,event.detail = { value, height },height 为键盘高度,在基础库 1.9.90 起支持 |","event":"\n### 事件\n#### UniInputConfirmEvent\n\n##### UniInputConfirmEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniInputConfirmEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| value | string | 是 | - | - | 输入框内容 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniInputConfirmEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniInputEvent\n\n##### UniInputEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniInputEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| value | string | 是 | - | - | 输入框内容 |\n@| cursor | number | 是 | - | - | 光标的位置 |\n@| keyCode | number | 是 | - | - | 输入字符的Unicode值 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniInputEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniTextareaLineChangeEvent\n\n##### UniTextareaLineChangeEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniTextareaLineChangeEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| lineCount | number | 是 | - | - | 行数 |\n@| heightRpx | number | 是 | - | - | textarea的高度 |\n@| height | number | 是 | - | - | textarea的高度 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniTextareaLineChangeEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniTextareaBlurEvent\n\n##### UniTextareaBlurEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniTextareaBlurEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| value | string | 是 | - | - | 输入框内容 |\n@| cursor | number | 是 | - | - | 选择区域的起始位置 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniTextareaBlurEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniInputKeyboardHeightChangeEvent\n\n##### UniInputKeyboardHeightChangeEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniInputKeyboardHeightChangeEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| height | number | 是 | - | - | 键盘高度 |\n@| duration | number | 是 | - | - | 持续时间 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniInputKeyboardHeightChangeEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniTextareaFocusEvent\n\n##### UniTextareaFocusEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniTextareaFocusEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| height | number | 是 | - | | 键盘高度 |\n@| value | string | 是 | - | - | 输入框内容 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| type | string | 是 | - | - | 事件类型 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniTextareaFocusEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/textarea/textarea.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/textarea/textarea\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\nimport { ItemType } from '@/components/enum-data/enum-data'\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tadjust_position_boolean: false,\n\t\t\tshow_confirm_bar_boolean: false,\n\t\t\tfixed_boolean: false,\n\t\t\tauto_height_boolean: false,\n\t\t\tconfirm_hold_boolean: false,\n\t\t\tfocus_boolean: true,\n\t\t\tauto_focus_boolean: false,\n default_value:\"1\\n2\\n3\\n4\\n5\\n6\",\n maxlength:-1,\n\t\t\tinputmode_enum: [{\"value\":1,\"name\":\"text\"},{\"value\":2,\"name\":\"decimal\"},{\"value\":3,\"name\":\"numeric\"},{\"value\":4,\"name\":\"tel\"},{\"value\":5,\"name\":\"search\"},{\"value\":6,\"name\":\"email\"},{\"value\":7,\"name\":\"url\"},{\"value\":0,\"name\":\"none\"}] as ItemType[],\n confirm_type_list: [{\"value\":0,\"name\":\"return\"},{\"value\":1,\"name\":\"done\"},{\"value\":2,\"name\":\"send\"},{\"value\":3,\"name\":\"search\"},{\"value\":4,\"name\":\"next\"},{\"value\":5,\"name\":\"go\"}] as ItemType[],\n cursor_color: \"#3393E2\",\n cursor: 0,\n\t\t\tinputmode_enum_current: 0,\n confirm_type_current: 0,\n placeholder_value: \"请输入\",\n defaultModel:'123'\n\t\t}\n\t},\n\n\tmethods: {\n\t\ttextarea_click() { console.log(\"组件被点击时触发\") },\n\t\ttextarea_touchstart() { console.log(\"手指触摸动作开始\") },\n\t\ttextarea_touchmove() { console.log(\"手指触摸后移动\") },\n\t\ttextarea_touchcancel() { console.log(\"手指触摸动作被打断,如来电提醒,弹窗\") },\n\t\ttextarea_touchend() { console.log(\"手指触摸动作结束\") },\n\t\ttextarea_tap() { console.log(\"手指触摸后马上离开\") },\n\t\ttextarea_longpress() { console.log(\"如果一个组件被绑定了 longpress 事件,那么当用户长按这个组件时,该事件将会被触发。\") },\n\t\ttextarea_confirm() { console.log(\"点击完成时, 触发 confirm 事件,event.detail = {value: value}\") },\n\t\ttextarea_input() { console.log(\"当键盘输入时,触发 input 事件,event.detail = {value, cursor}, @input 处理函数的返回值并不会反映到 textarea 上\") },\n\t\ttextarea_linechange() { console.log(\"输入框行数变化时调用,event.detail = {height: 0, height: 0, lineCount: 0}\") },\n\t\ttextarea_blur() { console.log(\"输入框失去焦点时触发,event.detail = {value, cursor}\") },\n\t\ttextarea_keyboardheightchange() { console.log(\"键盘高度发生变化的时候触发此事件,event.detail = {height: height, duration: duration}\") },\n\t\ttextarea_focus() { console.log(\"输入框聚焦时触发,event.detail = { value, height },height 为键盘高度\") },\n\t\tchange_adjust_position_boolean(checked : boolean) { this.adjust_position_boolean = checked },\n\t\tchange_show_confirm_bar_boolean(checked : boolean) { this.show_confirm_bar_boolean = checked },\n\t\tchange_fixed_boolean(checked : boolean) { this.fixed_boolean = checked },\n\t\tchange_auto_height_boolean(checked : boolean) { this.auto_height_boolean = checked },\n\t\tchange_confirm_hold_boolean(checked : boolean) { this.confirm_hold_boolean = checked },\n\t\tchange_focus_boolean(checked : boolean) { this.focus_boolean = checked },\n\t\tchange_auto_focus_boolean(checked : boolean) { this.auto_focus_boolean = checked },\n change_cursor_color_boolean(checked : boolean) { if(checked){ this.cursor_color = \"transparent\"} else {this.cursor_color = \"#3393E2\"}},\n\t\tradio_change_inputmode_enum(checked : number) { this.inputmode_enum_current = checked },\n radio_change_confirm_type(checked : number) { this.confirm_type_current = checked }\n\t}\n}\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"### 子组件 @children-tags \n 不可以嵌套组件","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/textarea)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/textarea.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.textarea)\n","component_type":"### UniTextareaElement\ntextarea元素对象\n#### UniTextareaElement 的属性值\n| 名称 | 类型 | 必填 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| name | string | 是 | | 表单的控件名称,作为键值对的一部分与表单(form组件)一同提交 |\n| type | string | 是 | | input的类型 |\n| disabled | boolean | 是 | | 是否禁用 |\n| autofocus | boolean | 是 | | 自动获取焦点 |\n| value | string | 是 | | 输入框的初始内容 |"},"video":{"name":"## video","description":"> 组件类型:[UniVideoElement](#univideoelement) \n\n 视频","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| loop | boolean | false | | 是否循环播放 |\n| src | string([string.VideoURIString](/uts/data-type.md#ide-string)) | - | | 视频资源地址 |\n| initial-time | number | 0 | | 指定视频初始播放位置 |\n| duration | number | - | | 指定视频长度 |\n| controls | boolean | true | | 是否显示默认播放控件(播放/暂停按钮、播放进度、时间) |\n| danmu-list | array | - | | 弹幕列表 |\n| danmu-btn | boolean | false | | 是否显示弹幕按钮,只在初始化时有效,不能动态变更 |\n| enable-danmu | boolean | false | | 是否展示弹幕,只在初始化时有效,不能动态变更 |\n| autoplay | boolean | false | | 是否自动播放 |\n| muted | boolean | false | | 是否静音播放 |\n| page-gesture | boolean | false | | 在非全屏模式下,是否开启亮度与音量调节手势 |\n| direction | number | - | | 设置全屏时视频的方向,不指定则根据宽高比自动判断。有效值为 0(正常竖向), 90(屏幕逆时针90度), -90(屏幕顺时针90度) |\n| show-progress | boolean | true | | 若不设置,宽度大于240时才会显示 |\n| show-fullscreen-btn | boolean | true | | 是否显示全屏按钮 |\n| show-play-btn | boolean | true | | 是否显示视频底部控制栏的播放按钮 |\n| show-center-play-btn | boolean | true | | 是否显示视频中间的播放按钮 |\n| show-loading | boolean | true | | 是否显示loading控件 |\n| enable-progress-gesture | boolean | true | | 是否开启控制进度的手势 |\n| objectFit | string | \"contain\" | | 当视频大小与 video 容器大小不一致时,视频的表现形式。 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| contain | | 包含 |\n@| fill | | 填充 |\n@| cover | | 覆盖 |\n| poster | string | - | | 视频封面的图片网络资源地址,如果 controls 属性值为 false 则设置 poster 无效 |\n| show-mute-btn | boolean | false | | 是否显示静音按钮 |\n| title | string | - | | 视频的标题,全屏时在顶部展示 |\n| play-btn-position | string | - | | 播放按钮的位置 |\n| enable-play-gesture | boolean | false | | 是否开启播放手势,即双击切换播放、暂停 |\n| auto-pause-if-navigate | boolean | - | | 当跳转到其它页面时,是否自动暂停本页面的视频 |\n| auto-pause-if-open-native | boolean | - | | 当跳转到其它小程序宿主原生页面时,是否自动暂停本页面的视频 |\n| vslide-gesture | boolean | false | | 在非全屏模式下,是否开启亮度与音量调节手势(同 page-gesture) |\n| vslide-gesture-in-fullscreen | boolean | true | | 在全屏模式下,是否开启亮度与音量调节手势 |\n| poster-for-crawler | string | - | | 用于给搜索等场景作为视频封面展示,建议使用无播放 icon 的视频封面图,只支持网络地址 |\n| codec | string | \"hardware\" | | 解码器选择 |\n| http-cache | boolean | false | | 是否对 http、https 视频源开启本地缓存 |\n| play-strategy | number | 0 | | 播放策略 |\n| is-live | boolean | - | | 是否为直播源 |\n| @loadedmetadata | (event: [UniVideoLoadedMetadataEvent](#univideoloadedmetadataevent)) => void | - | | 视频元数据加载完成时触发 |\n| @play | (event: [UniEvent](/component/common#unievent)) => void | - | | 当开始/继续播放时触发 |\n| @pause | (event: [UniEvent](/component/common#unievent)) => void | - | | 当暂停播放时触发 |\n| @ended | (event: [UniEvent](/component/common#unievent)) => void | - | | 当播放到视频末尾时触发 |\n| @timeupdate | (event: [UniVideoTimeUpdateEvent](#univideotimeupdateevent)) => void | - | | 播放进度变化时触发,event.detail = { currentTime, duration }。触发频率 250ms 一次 |\n| @fullscreenchange | (event: [UniVideoFullScreenChangeEvent](#univideofullscreenchangeevent)) => void | - | | 当视频进入和退出全屏时触发,event.detail = { fullScreen, direction },direction取为 vertical 或 horizontal |\n| @waiting | (event: [UniEvent](/component/common#unievent)) => void | - | | 视频出现缓冲时触发 |\n| @error | (event: [UniVideoErrorEvent](#univideoerrorevent)) => void | - | | 播放出错时触发 |\n| @progress | (event: [UniVideoProgressEvent](#univideoprogressevent)) => void | - | | 加载进度变化时触发,只支持一段加载。event.detail = { buffered },百分比 |\n| @fullscreenclick | (event: [UniVideoFullScreenClickEvent](#univideofullscreenclickevent)) => void | - | | 视频全屏播放时点击屏幕触发。event.detail = { screenX, screenY, screenWidth, screenHeight } |\n| @controlstoggle | (event: [UniVideoControlsToggleEvent](#univideocontrolstoggleevent)) => void | - | | 切换 controls 显示隐藏时触发。event.detail = { show } |","event":"\n### 事件\n#### UniVideoTimeUpdateEvent\ntimeupdate 事件
播放进度变化时触发\n##### UniVideoTimeUpdateEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniVideoTimeUpdateEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| currentTime | number | 是 | - | - | 当前进度 |\n@| duration | number | 是 | - | - | 总进度 |\n| type | string | 是 | - | - | - |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | - |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | - |\n| timeStamp | number | 是 | - | - | - |\n\n\n#### UniVideoFullScreenChangeEvent\nfullscreenchange 事件
当视频进入和退出全屏是触发\n##### UniVideoFullScreenChangeEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniVideoFullScreenChangeEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fullScreen | boolean | 是 | - | - | 是否全屏 |\n@| direction | string | 是 | - | - | 横竖屏,取值 vertical 或 horizontal |\n| type | string | 是 | - | - | - |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | - |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | - |\n| timeStamp | number | 是 | - | - | - |\n\n\n#### UniVideoErrorEvent\nerror 事件
视频播放出错时触发\n##### UniVideoErrorEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **VideoError** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| errCode | 100001 \\| 200001 \\| 300001 | 是 | - | - | 统一错误码
100001 网络错误
200001 内部错误
300001 SDK错误 |\n@| errSubject | string | 是 | - | - | 统一错误主题(模块)名称 |\n@| data | any \\| null | 否 | - | - | 错误信息中包含的数据 |\n@| cause | [Error](https://uniapp.dcloud.net.cn/tutorial/err-spec.html#unierror) \\| null | 否 | - | - | 源错误信息,可以包含多个错误,详见SourceError |\n@| errMsg | string | 是 | - | - | - |\n| type | string | 是 | - | - | - |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | - |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | - |\n| timeStamp | number | 是 | - | - | - |\n\n\n#### UniVideoProgressEvent\nprogress 事件
加载进度变化时触发\n##### UniVideoProgressEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniVideoProgressEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| buffered | number | 是 | - | - | 加载进度百分比 |\n| type | string | 是 | - | - | - |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | - |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | - |\n| timeStamp | number | 是 | - | - | - |\n\n\n#### UniVideoFullScreenClickEvent\nfullscreenclick 事件
视频播放全屏播放时点击事件\n##### UniVideoFullScreenClickEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniVideoFullScreenClickEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| screenX | number | 是 | - | - | 点击点相对于屏幕左侧边缘的 X 轴坐标 |\n@| screenY | number | 是 | - | - | 点击点相对于屏幕顶部边缘的 Y 轴坐标 |\n@| screenWidth | number | 是 | - | - | 屏幕总宽度 |\n@| screenHeight | number | 是 | - | - | 屏幕总高度 |\n| type | string | 是 | - | - | - |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | - |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | - |\n| timeStamp | number | 是 | - | - | - |\n\n\n#### UniVideoControlsToggleEvent\ncontrolstoggle 事件
切换播放控件显示隐藏时触发\n##### UniVideoControlsToggleEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| detail | **UniVideoControlsToggleEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| show | boolean | 是 | - | - | 是否显示 |\n| type | string | 是 | - | - | - |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | - |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | - |\n| timeStamp | number | 是 | - | - | - |\n\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/video/video.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/video/video\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n onReady() {\n this.videoContext = uni.createVideoContext('video', this);\n },\n data() {\n return {\n videoContext: null as VideoContext | null,\n // 属性\n src: \"https://qiniu-web-assets.dcloud.net.cn/video/sample/2minute-demo.mp4\",\n _src: \"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni-app-video-courses.mp4\",\n autoplay: false,\n loop: false,\n muted: false,\n initialTime: 0,\n _initialTime: 6,\n duration: 0,\n _duration: 60,\n controls: true,\n danmuList: [{\n text: '要显示的文本',\n color: '#FF0000',\n time: 3\n }, {\n text: '要显示的文本2',\n color: '#31ff23',\n time: 5\n }, {\n text: '要显示的文本3',\n color: '#f13ef8',\n time: 7\n }, {\n text: '要显示的文本4',\n color: '#4972f8',\n time: 9\n }, {\n text: '要显示的文本5',\n color: '#000000',\n time: 11\n }] as Array,\n danmuBtn: false,\n enableDanmu: true,\n pageGesture: false,\n direction: -1,\n _direction: 0,\n requestFullScreenOptions: {\n direction: -90\n } as RequestFullScreenOptions,\n showProgress: true,\n showFullscreenBtn: true,\n showPlayBtn: true,\n showCenterPlayBtn: true,\n showLoading: true,\n enableProgressGesture: true,\n objectFit: \"contain\",\n _objectFit: \"fill\",\n poster: \"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni-android.png\",\n _poster: \"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni-ios.png\",\n showMuteBtn: false,\n title: \"video-component\",\n _title: \"video-component video-component\",\n enablePlayGesture: false,\n vslideGesture: false,\n vslideGestureInFullscreen: true,\n codec: \"hardware\",\n _codec: \"software\",\n httpCache: true,\n playStrategy: 0,\n _playStrategy: 2,\n header: {\n 'User-Agent': 'User-Agent test',\n 'header': 'header test',\n 'cookie': 'cookie test'\n } as UTSJSONObject,\n _header: {\n 'User-Agent': 'User-Agent test2',\n 'header': 'header test2',\n 'cookie': 'cookie test2'\n } as UTSJSONObject,\n // API\n pos: 10,\n rate: 1.5,\n danmu: {\n text: '要显示的文本',\n color: '#FF0000'\n } as Danmu,\n // 自动化测试\n autoTest: false,\n isPlaying: false,\n isPause: false,\n isError: false,\n localSrc: ''\n }\n },\n onLoad() {\n },\n methods: {\n // API\n play: function () {\n console.log(\"play\");\n this.videoContext?.play();\n },\n pause: function () {\n console.log(\"pause\");\n (uni.getElementById(\"video\") as UniVideoElement).pause(); //as写法测试。注意id不对时as会崩溃\n // this.videoContext?.pause();\n },\n seek: function (pos : number) {\n console.log(\"seek -> \" + pos);\n this.videoContext?.seek(pos);\n },\n requestFullScreen: function (options : RequestFullScreenOptions | null) {\n console.log(\"requestFullScreen -> \" + options);\n this.videoContext?.requestFullScreen(options);\n },\n exitFullScreen: function () {\n console.log(\"exitFullScreen\");\n this.videoContext?.exitFullScreen();\n },\n stop: function () {\n console.log(\"stop\");\n uni.getElementById(\"video\")?.stop(); //泛型写法测试\n // this.videoContext?.stop();\n },\n sendDanmu: function (danmu : Danmu) {\n console.log(\"sendDanmu -> \" + danmu);\n this.videoContext?.sendDanmu(danmu);\n },\n playbackRate: function (rate : number) {\n console.log(\"playbackRate -> \" + rate);\n this.videoContext?.playbackRate(rate);\n },\n // 属性\n setSrc: function (src : string) {\n this.src = src;\n console.log(\"src -> \" + this.src)\n },\n setAutoplay: function () {\n this.autoplay = !this.autoplay;\n console.log(\"autoplay -> \" + this.autoplay)\n },\n setLoop: function () {\n this.loop = !this.loop;\n console.log(\"loop -> \" + this.loop)\n },\n setMuted: function () {\n this.muted = !this.muted;\n console.log(\"muted -> \" + this.muted)\n },\n setInitialTime: function (initialTime : number) {\n this.initialTime = initialTime;\n console.log(\"initialTime -> \" + this.initialTime)\n },\n setDuration: function (duration : number) {\n this.duration = duration;\n console.log(\"duration -> \" + this.duration)\n },\n setControls: function () {\n this.controls = !this.controls;\n console.log(\"controls -> \" + this.controls)\n },\n setDanmuBtn: function () {\n this.danmuBtn = !this.danmuBtn;\n console.log(\"danmuBtn -> \" + this.danmuBtn)\n },\n setPageGesture: function () {\n this.pageGesture = !this.pageGesture;\n console.log(\"pageGesture -> \" + this.pageGesture)\n },\n setDirection: function (direction : number) {\n this.direction = direction;\n console.log(\"direction -> \" + this.direction)\n },\n setShowProgress: function () {\n this.showProgress = !this.showProgress;\n console.log(\"showProgress -> \" + this.showProgress)\n },\n setShowFullscreenBtn: function () {\n this.showFullscreenBtn = !this.showFullscreenBtn;\n console.log(\"showFullscreenBtn -> \" + this.showFullscreenBtn)\n },\n setShowPlayBtn: function () {\n this.showPlayBtn = !this.showPlayBtn;\n console.log(\"showPlayBtn -> \" + this.showPlayBtn)\n },\n setShowCenterPlayBtn: function () {\n this.showCenterPlayBtn = !this.showCenterPlayBtn;\n console.log(\"showCenterPlayBtn -> \" + this.showCenterPlayBtn)\n },\n setShowLoading: function () {\n this.showLoading = !this.showLoading;\n console.log(\"showLoading -> \" + this.showLoading)\n },\n setEnableProgressGesture: function () {\n this.enableProgressGesture = !this.enableProgressGesture;\n console.log(\"enableProgressGesture -> \" + this.enableProgressGesture)\n },\n setObjectFit: function (objectFit : string) {\n this.objectFit = objectFit;\n console.log(\"objectFit -> \" + this.objectFit)\n },\n setPoster: function (poster : string) {\n this.poster = poster;\n console.log(\"poster -> \" + this.poster)\n },\n setShowMuteBtn: function () {\n this.showMuteBtn = !this.showMuteBtn;\n console.log(\"showMuteBtn -> \" + this.showMuteBtn)\n },\n setTitle: function (title : string) {\n this.title = title;\n console.log(\"title -> \" + this.title)\n },\n setEnablePlayGesture: function () {\n this.enablePlayGesture = !this.enablePlayGesture;\n console.log(\"enablePlayGesture -> \" + this.enablePlayGesture)\n },\n setVslideGesture: function () {\n this.vslideGesture = !this.vslideGesture;\n console.log(\"vslideGesture -> \" + this.vslideGesture)\n },\n setVslideGestureInFullscreen: function () {\n this.vslideGestureInFullscreen = !this.vslideGestureInFullscreen;\n console.log(\"vslideGestureInFullscreen -> \" + this.vslideGestureInFullscreen)\n },\n setCodec: function (codec : string) {\n this.codec = codec;\n console.log(\"codec -> \" + this.codec)\n },\n setHttpCache: function () {\n this.httpCache = !this.httpCache;\n console.log(\"httpCache -> \" + this.httpCache)\n },\n setPlayStrategy: function (playStrategy : number) {\n this.playStrategy = playStrategy;\n console.log(\"playStrategy -> \" + this.playStrategy)\n },\n setHeader: function (header : UTSJSONObject) {\n this.header = header;\n console.log(\"header -> \" + JSON.stringify(this.header))\n },\n // 事件\n onPlay: function (res : UniEvent) {\n console.log(res.type);\n this.isPlaying = true;\n this.isPause = false;\n },\n onPause: function (res : UniEvent) {\n console.log(res.type);\n this.isPlaying = false;\n this.isPause = true;\n },\n onEnded: function (res : UniEvent) {\n console.log(res.type);\n },\n onTimeUpdate: function (res : UniVideoTimeUpdateEvent) {\n console.log(res.type + \" -> \" + JSON.stringify(res.detail));\n },\n onFullScreenChange: function (res : UniVideoFullScreenChangeEvent) {\n console.log(res.type + \" -> \" + JSON.stringify(res.detail));\n },\n onWaiting: function (res : UniEvent) {\n console.log(res.type);\n },\n onError: function (res : UniVideoErrorEvent) {\n console.log(res.type + \" -> \" + JSON.stringify(res.detail));\n this.isError = true;\n },\n onProgress: function (res : UniVideoProgressEvent) {\n console.log(res.type + \" -> \" + JSON.stringify(res.detail));\n },\n onFullScreenClick: function (res : UniVideoFullScreenClickEvent) {\n console.log(res.type + \" -> \" + JSON.stringify(res.detail));\n },\n onControlsToggle: function (res : UniVideoControlsToggleEvent) {\n console.log(res.type + \" -> \" + JSON.stringify(res.detail));\n },\n onSrcInputConfirm(event : UniInputConfirmEvent) {\n this.src = event.detail.value;\n },\n // 自动化测试\n downloadSource() {\n uni.downloadFile({\n url: 'https://qiniu-web-assets.dcloud.net.cn/video/sample/2minute-demo.mp4',\n success: (res) => {\n this.localSrc = res.tempFilePath;\n this.autoTest = true;\n },\n fail: (_) => {\n this.isError = true;\n }\n })\n }\n }\n }\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"### 子组件 @children-tags \n 不可以嵌套组件","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/video)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/video.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.video)\n","component_type":"### UniVideoElement\nvideo元素对象\n#### UniVideoElement 的方法\n##### play() @play\n播放\n\n\n###### play 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### pause() @pause\n暂停\n\n\n###### pause 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### seek(position) @seek\n跳转到指定位置\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| position | number | 是 | - | - | 跳转到指定位置(秒) | \n\n\n###### seek 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### stop() @stop\n停止视频\n\n\n###### stop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### sendDanmu(danmu) @senddanmu\n发送弹幕\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| danmu | **Danmu** | 是 | - | - | 弹幕数据 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| text | string \\| null | 否 | - | - | 弹幕文字 |\n@| color | string \\| null | 否 | - | - | 弹幕颜色 |\n@| time | number \\| null | 否 | - | - | 显示时刻 | \n\n\n###### sendDanmu 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### playbackRate(rate) @playbackrate\n设置倍速播放\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| rate | number | 是 | - | - | 支持倍率 0.5/0.8/1.0/1.25/1.5 | \n\n\n###### playbackRate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### requestFullScreen(direction?) @requestfullscreen\n进入全屏\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| direction | **RequestFullScreenOptions** | 否 | - | - | 0\\|正常竖向, 90\\|屏幕逆时针90度, -90\\|屏幕顺时针90度 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| direction | number \\| null | 否 | - | - | direction
- 0: 正常竖向
- 90: 屏幕逆时针90度
- -90: 屏幕顺时针90度 | \n\n\n###### requestFullScreen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### exitFullScreen() @exitfullscreen\n退出全屏\n\n\n###### exitFullScreen 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n"},"unicloud-db":{"name":"## unicloud-db","description":"> 组件类型:[UniCloudDBElement](#uniclouddbelement) \n\n 是一个数据库查询组件,它将clientDB的API封装为组件,进一步减少开发者使用所需的代码量。","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| id | string([string.IDString](/uts/data-type.md#ide-string)) | - | - | 唯一标识 |\n| v-slot:default | string | - | | {data, loading, hasMore, pagination, error} |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| data | - | 查询结果,类型为Array\\ |\n@| loading | - | 查询中的状态。可根据此状态,在template中通过v-if显示等待内容 |\n@| hasMore | - | 是否有更多数据。可根据此状态,在template中通过v-if显示没有更多数据了 |\n@| error | - | 查询错误。可根据此状态,在template中通过v-if显示等待内容 |\n@| pagination | - | 分页属性 |\n@@| 值名称 | 兼容性 | 描述 |\n@@| :- | :-: | :- |\n@@| current | - | 当前页号 |\n@@| size | - | 分页大小 |\n@@| count | - | 数据库的总数据量, 设置 :getcount=true 时有效 |\n| collection | string([string.DBCollectionString](/uts/data-type.md#ide-string)) | - | | 表名 |\n| field | string([string.DBFieldString](/uts/data-type.md#ide-string)) | - | | 查询字段,多个字段用 `,` 分割 |\n| where | string([string.JQLString](/uts/data-type.md#ide-string)) | - | | 查询条件 |\n| orderby | string | - | | 排序字段及正序倒叙设置 |\n| groupby | string | - | | 对数据进行分组 |\n| group-field | string | - | | 对数据进行分组统计 |\n| distinct | boolean | - | | 是否对数据查询结果中重复的记录进行去重 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| true | - | 去重 |\n@| false | - | 不去重 |\n| page-data | string | - | | add 多次查询的集合, replace 当前查询的集合 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| add | - | 多次查询的集合 |\n@| replace | - | 当前查询的集合 |\n| page-current | number | - | | 当前页 |\n| page-size | number | - | | 每页数据数量 |\n| getone | boolean | - | | 指定查询结果是否返回数组第一条数据,默认 false。在false情况下返回的是数组,即便只有一条结果,也需要\\[0]方式获取。在true下,直接返回结果数据,少一层数组 |\n| getcount | boolean | - | | 是否查询总数量 |\n| gettree | boolean | - | | 是否查询树状结构数据 |\n| startwith | string | - | | gettree的第一层级条件,此初始条件可以省略,不传startWith时默认从最顶级开始查询 |\n| limitlevel | number | - | | gettree查询返回的树的最大层级。超过设定层级的节点不会返回。默认10级,最大15,最小1 |\n| manual | boolean | - | | 是否手动加载数据,默认为 false,页面onLoad时自动联网加载数据 |\n| loadtime | string | - | | 加载数据时机,默认auto,可选值 auto\\|onready\\|manual |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| auto | - | 页面就绪后或属性变化后加载数据,默认为auto |\n@| onready | - | 页面就绪后不自动加载数据,属性变化后加载。适合在onLoad中接收上个页面的参数作为where条件时 |\n@| manual | - | 手动模式,不自动加载数据。如果涉及到分页,需要先手动修改当前页,在调用加载数据 |\n| ~~action~~ | string([string.ClientDBActionString](/uts/data-type.md#ide-string)) | - | | 云端执行数据库查询的前或后,触发某个action函数操作,进行预处理或后处理(推荐改用JQL触发器) |\n| @load | (data : Array\\, ended : boolean, pagination : [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md)) => void | - | | 成功回调。如联网返回结果后,想修改下数据再渲染界面,则在本方法里对data进行修改 |\n| @error | (event: [UniEvent](/component/common#unievent)) => void | - | | 失败回调 |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/unicloud-db/unicloud-db.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/unicloud-db/unicloud-db\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n const db = uniCloud.databaseForJQL()\n\n export default {\n data() {\n return {\n collection: 'unicloud-db-test',\n collectionList: [\n db.collection('book').where('name == \"水浒传\"').getTemp(),\n ] as UTSJSONObject[],\n $uniCloudElement: null as UniCloudDBElement | null,\n $isTesting: false,\n $addResult: {},\n $updateResult: {},\n $removeResult: {}\n }\n },\n onReady() {\n this.$uniCloudElement = this.$refs['udb'] as UniCloudDBElement\n this.get();\n },\n onPullDownRefresh() {\n this.$uniCloudElement!.loadData({\n clear: true,\n success: (_ : UniCloudDBGetResult) => {\n uni.stopPullDownRefresh()\n }\n })\n },\n methods: {\n loadMore() {\n this.$uniCloudElement!.loadMore()\n },\n get() {\n this.$uniCloudElement!.loadData({\n clear: true\n })\n },\n add() {\n const value = {\n title: \"title-\" + Date.now(),\n comment: \"comment\" + Date.now()\n };\n this.$uniCloudElement!.add(value, {\n showToast: false,\n success: (res : UniCloudDBAddResult) => {\n this.$addResult = {\n id: res.id\n };\n this.get();\n },\n fail: (err : any | null) => {\n this.showError(err)\n }\n })\n },\n update(id : string) {\n const value = {\n title: \"title-\" + Date.now(),\n comment: \"comment\" + Date.now()\n };\n this.$uniCloudElement!.update(id, value, {\n showToast: false,\n needLoading: true,\n needConfirm: false,\n loadingTitle: \"正在更新...\",\n success: (res : UniCloudDBUpdateResult) => {\n this.$updateResult = {\n updated: res.updated\n }\n },\n fail: (err : any | null) => {\n this.showError(err)\n }\n })\n },\n remove(id : string) {\n this.$uniCloudElement!.remove(id, {\n showToast: false,\n needConfirm: false,\n needLoading: false,\n success: (res : UniCloudDBRemoveResult) => {\n this.$removeResult = {\n deleted: res.deleted\n }\n },\n fail: (err : any | null) => {\n this.showError(err)\n }\n })\n },\n onQueryLoad(data : Array, ended : boolean, pagination : UTSJSONObject) {\n console.log(data, ended, pagination);\n },\n showError(err : any | null) {\n const error = err as UniCloudError\n uni.showModal({\n content: error.errMsg,\n showCancel: false\n })\n }\n }\n }\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.93 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/uniCloud/unicloud-db)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/unicloud-db.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.unicloud-db)\n","component_type":"### UniCloudDBElement\n\n#### UniCloudDBElement 的属性值\n| 名称 | 类型 | 必填 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| dataList | Array\\ | 是 | - | 已加载的数据 |\n#### UniCloudDBElement 的方法\n##### loadData(options?) @loaddata\n加载数据
当 \\ 组件的 manual 属性设为 true 或者 loadtime 属性设置为 manual 时,不会在页面初始化时联网查询数据,此时需要通过本方法在需要的时候手动加载数据。\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **UniCloudDBComponentLoadDataOptions** | 否 | - | - | 可选参数 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| clear | boolean \\| null | 否 | false | - | 是否清空数据 |\n@| current | number \\| null | 否 | - | - | 当前第几页 |\n@| success | (res?: T \\| null) => void \\| null | 否 | - | - | 成功回调 |\n@| fail | (err?: any \\| null) => void \\| null | 否 | - | - | 失败回调 |\n@| complete | () => void \\| null | 否 | - | - | 完成回调 | \n\n\n###### loadData 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### loadMore() @loadmore\n加载更多数据
在列表的加载下一页场景下,使用ref方式访问组件方法,加载更多数据,每加载成功一次,当前页 +1\n\n\n###### loadMore 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### add(value, options?) @add\n新增数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| value | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) | 是 | - | - | 如果属性名存在,且类型为UTSJSONObject返回对应的结果,不存在返回null |\n| options | **UniCloudDBComponentAddOptions** | 否 | - | - | 可选参数 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| showToast | boolean \\| null | 否 | true | - | 是否显示 Toast |\n@| toastTitle | string \\| null | 否 | - | - | Toast 标题 |\n@| needLoading | boolean \\| null | 否 | true | - | 是否需要 Loading |\n@| loadingTitle | string \\| null | 否 | - | - | Loading 标题 |\n@| success | (res?: T \\| null) => void \\| null | 否 | - | - | 成功回调 |\n@| fail | (err?: any \\| null) => void \\| null | 否 | - | - | 失败回调 |\n@| complete | () => void \\| null | 否 | - | - | 完成回调 | \n\n\n###### add 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### remove() @remove\n移除数据\n\n\n###### remove 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### remove() @remove\n移除数据\n\n\n###### remove 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### update(id, value, options?) @update\n更新数据\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| id | string | 是 | - | - | 数据库字段的唯一标识. |\n| value | [UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md) | 是 | - | - | 需要修改的新数据. |\n| options | **UniCloudDBComponentUpdateOptions** | 否 | - | - | 可选参数 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| showToast | boolean \\| null | 否 | true | - | 是否显示更新后 Toast |\n@| toastTitle | string \\| null | 否 | \"\" | - | 更新成功后 Toast 标题 |\n@| confirmTitle | string \\| null | 否 | - | - | 确认框标题 |\n@| confirmContent | string \\| null | 否 | - | - | 确认框内容 |\n@| needConfirm | boolean \\| null | 否 | true | - | 是否显示更新确认框 |\n@| needLoading | boolean \\| null | 否 | true | - | 是否需要 Loading |\n@| loadingTitle | string \\| null | 否 | - | - | Loading 标题 |\n@| success | (res?: T \\| null) => void \\| null | 否 | - | - | 成功回调 |\n@| fail | (err?: any \\| null) => void \\| null | 否 | - | - | 失败回调 |\n@| complete | () => void \\| null | 否 | - | - | 完成回调 | \n\n\n###### update 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n"},"view":{"name":"## view","description":"> 组件类型:UniViewElement \n\n 基本视图容器","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| hover-class | string([string.ClassString](/uts/data-type.md#ide-string)) | \"none\" | | 指定按下去的样式类。当 hover-class=\"none\" 时,没有点击态效果 |\n| hover-stop-propagation | boolean | false | | 指定是否阻止本节点的祖先节点出现点击态(祖先节点:指根节点到该节点路径上的所有节点都是这个节点的祖先节点) |\n| hover-start-time | number | 50 | | 按住后多久出现点击态,单位毫秒 |\n| hover-stay-time | number | 400 | | 手指松开后点击态保留时间,单位毫秒 |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/view/view.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/view/view\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n import { ItemType } from '@/components/enum-data/enum-data'\n export default {\n data() {\n return {\n hover_class: false,\n stop_propagation: false,\n start_time: 50,\n stay_time: 400,\n start_time_enum: [{ \"value\": 50, \"name\": \"50毫秒\" }, { \"value\": 200, \"name\": \"200毫秒\" }] as ItemType[],\n stay_time_enum: [{ \"value\": 400, \"name\": \"400毫秒\" }, { \"value\": 200, \"name\": \"200毫秒\" }] as ItemType[]\n }\n },\n methods: {\n change_hover_class_boolean(checked : boolean) {\n this.hover_class = checked\n },\n change_stop_propagation_boolean(checked : boolean) {\n this.stop_propagation = checked\n },\n radio_change_start_time_enum(time : number) {\n this.start_time = time\n },\n radio_change_stay_time_enum(time : number) {\n this.stay_time = time\n },\n },\n }\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/view)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/view.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.view)\n"},"web-view":{"name":"## web-view","description":"> 组件类型:[UniWebViewElement](#uniwebviewelement) \n\n 承载网页的容器","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| src | string([string.HTMLURIString](/uts/data-type.md#ide-string)) | - | | webview 指向网页的链接 |\n| webview-styles | **WebViewStyles** | {\"progress\":{\"color\":\"#00FF00\"}} | | webview 网络地址页面加载进度条样式 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| progress | **WebViewProgressStyles** \\| boolean | 是 | false | - | 网络地址页面加载进度条样式,设置为 false 时表示不显示加载进度条。 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| color | [string.ColorString](/uts/data-type.md#ide-string) | 是 | - | - | 网页加载进度条颜色,默认值为 #00FF00 。 |\n@\n| horizontalScrollBarAccess | boolean | true | | 设置是否显示横向滚动条 |\n| verticalScrollBarAccess | boolean | true | | 设置是否显示纵向滚动条 |\n| @message | (event: [UniWebViewMessageEvent](#uniwebviewmessageevent)) => void | - | | 网页向应用 postMessage 时触发。e.detail = { data } |\n| @error | (event: [UniWebViewErrorEvent](#uniwebviewerrorevent)) => void | - | | 网页加载错误时触发。e.detail = { errSubject, errCode, errMsg, url, fullUrl, src } |\n| @load | (event: [UniWebViewLoadEvent](#uniwebviewloadevent)) => void | - | | 网页加载完成后触发。e.detail = { url, src } |\n| ~~@loaded~~ | (event: [UniWebViewLoadEvent](#uniwebviewloadevent)) => void | - | - | 网页加载完成后触发。e.detail = { url, src }。已废弃,请改用load |\n| @loading | (event: [UniWebViewLoadingEvent](#uniwebviewloadingevent)) => void | - | | 网页加载中触发。e.detail = { url, src } |\n| @download | (event: [UniWebViewDownloadEvent](#uniwebviewdownloadevent)) => void | - | | 点击网页中可下载链接时触发。e.detail = { url, userAgent, contentDisposition, mimetype, contentLength } |","event":"\n### 事件\n#### UniWebViewMessageEvent\n\n##### UniWebViewMessageEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 事件类型,固定值message |\n| detail | **UniWebViewMessageEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| data | Array\\<[UTSJSONObject](/uts/buildin-object-api/utsjsonobject.md)\\> | 是 | - | - | 消息包含的数据,4.13版本之前类型为Map\\ \\| null,4.13版本(含)之后类型为Array\\ |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniWebViewMessageEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniWebViewErrorEvent\n\n##### UniWebViewErrorEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 事件类型,固定值error |\n| detail | **UniWebViewErrorEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| errSubject | string | 是 | - | - | 统一错误主题(模块)名称,固定值uni-web-view |\n@| errCode | 100001 \\| 100002 \\| 100003 | 是 | - | - | 统一错误码
100001 ssl error
100002 page error
100003 http error |\n@| errMsg | string | 是 | - | - | 统一错误描述信息 |\n@| url | string | 是 | - | - | 加载错误的网页链接,非完整链接,仅包含scheme://authority部分,4.13版本起支持 |\n@| fullUrl | string | 是 | - | - | 加载错误的网页链接,完整链接,4.13版本起支持 |\n@| src | string | 是 | - | - | 加载错误的网页链接,完整链接,4.13版本起支持 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniWebViewErrorEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniWebViewLoadEvent\n\n##### UniWebViewLoadEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 事件类型,固定值load |\n| detail | **UniWebViewLoadEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| ~~url~~ | string | 是 | - | - | 加载完成的网页链接 **4.13版本起废弃,请改用src** |\n@| src | string | 是 | - | - | 加载完成的网页链接,4.13版本起支持 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniWebViewLoadEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniWebViewLoadingEvent\n\n##### UniWebViewLoadingEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 事件类型,固定值loading |\n| detail | **UniWebViewLoadingEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| ~~url~~ | string | 是 | - | - | 加载中的网页链接 **4.13版本起废弃,请改用src** |\n@| src | string | 是 | - | - | 加载中的网页链接,4.13版本起支持 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniWebViewLoadingEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n\n#### UniWebViewDownloadEvent\n\n##### UniWebViewDownloadEvent 的属性值\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 事件类型,固定值download |\n| detail | **UniWebViewDownloadEventDetail** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| url | string | 是 | - | - | 下载链接 |\n@| userAgent | string | 是 | - | - | 用户代理 |\n@| contentDisposition | string | 是 | - | - | 指示回复的内容该以何种形式展示,是以内联的形式(即网页或者页面的一部分),还是以附件的形式下载并保存到本地 |\n@| mimetype | string | 是 | - | - | 媒体类型 |\n@| contentLength | number | 是 | - | - | 文件大小 |\n| bubbles | boolean | 是 | - | - | 是否冒泡 |\n| cancelable | boolean | 是 | - | - | 是否可以取消 |\n| target | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 触发事件的组件 |\n| currentTarget | [UniElement](/dom/unielement.md) \\| null | 否 | - | - | 当前组件 |\n| timeStamp | number | 是 | - | - | 事件发生时的时间戳 |\n\n\n##### UniWebViewDownloadEvent 的方法\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| stopPropagation | () => void | 是 | - | - | 阻止当前事件的进一步传播 |\n| preventDefault | () => void | 是 | - | | 阻止当前事件的默认行为
|\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/web-view/web-view.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/web-view/web-view\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n src: 'https://www.dcloud.io',\n webview_styles: {\n progress: {\n color: '#FF3333'\n }\n },\n webviewContext: null as WebviewContext | null,\n loadError: false,\n horizontalScrollBarAccess: true,\n verticalScrollBarAccess: true\n }\n },\n onReady() {\n // #ifdef APP\n // TODO web 实现createWebviewContext\n this.webviewContext = uni.createWebviewContext('web-view', this)\n // #endif\n },\n methods: {\n back() {\n this.webviewContext?.back();\n },\n forward() {\n this.webviewContext?.forward();\n },\n reload() {\n this.webviewContext?.reload();\n },\n stop() {\n this.webviewContext?.stop();\n },\n nativeToWeb() {\n this.webviewContext?.evalJS(\"alert('hello uni-app x')\");\n },\n message(event : UniWebViewMessageEvent) {\n console.log(JSON.stringify(event));\n },\n error(event : UniWebViewErrorEvent) {\n this.loadError = true\n console.log(JSON.stringify(event));\n },\n loading(event : UniWebViewLoadingEvent) {\n console.log(JSON.stringify(event));\n },\n load(event : UniWebViewLoadEvent) {\n console.log(JSON.stringify(event));\n },\n download(event : UniWebViewDownloadEvent) {\n console.log(JSON.stringify(event));\n uni.showModal({\n content: \"下载链接: \" + event.detail.url + \"\\n文件大小: \" + event.detail.contentLength / 1024 + \"KB\",\n showCancel: false\n });\n },\n confirm(event : UniInputConfirmEvent) {\n console.log(JSON.stringify(event));\n let url = event.detail.value;\n if (!url.startsWith('https://') && !url.startsWith('http://')) {\n url = 'https://' + url;\n }\n this.src = url;\n },\n changeHorizontalScrollBarAccess(event : UniSwitchChangeEvent) {\n this.horizontalScrollBarAccess = event.detail.value;\n },\n changeVerticalScrollBarAccess(event : UniSwitchChangeEvent) {\n this.verticalScrollBarAccess = event.detail.value;\n }\n }\n }\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 3.9 | 4.11 |\n","children":"### 子组件 @children-tags \n 不可以嵌套组件","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/web-view)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/web-view.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.web-view)\n","component_type":"### UniWebViewElement\nweb-view元素对象\n#### UniWebViewElement 的方法\n##### back() @back\n后退\n\n\n###### back 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### forward() @forward\n前进\n\n\n###### forward 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### reload() @reload\n重新加载\n\n\n###### reload 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### stop() @stop\n停止加载\n\n\n###### stop 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### evalJS(js) @evaljs\n原生和WebView通信(执行JS脚本)\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| js | string | 是 | - | - | - | \n\n\n###### evalJS 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n"},"nested-scroll-body":{"name":"## nested-scroll-body","description":"> 组件类型:UniNestedScrollHeaderElement \n\n scroll-view 嵌套模式场景中属于嵌套内层 scroll-view 的父节点,仅支持作为 \\ 嵌套模式的直接子节点。不支持复数子节点,渲染时会取其第一个子节点来渲染","attribute":"","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/nested-scroll-body/nested-scroll-body.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/nested-scroll-body/nested-scroll-body\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n import refreshBox from '../../template/custom-refresher/refresh-box/refresh-box.uvue';\n\texport default {\n components: { refreshBox },\n\t\tdata() {\n\t\t\treturn {\n scrollData: [] as Array,\n scrollTop: 0,\n refresherTriggered: false,\n pullingDistance: 0,\n resetting: false\n\t\t\t}\n\t\t},\n computed: {\n \tstate() : number {\n \t\tif (this.resetting) {\n \t\t\treturn 3;\n \t\t}\n \t\tif (this.refresherTriggered) {\n \t\t\treturn 2\n \t\t}\n \t\tif (this.pullingDistance > 45) {\n \t\t\treturn 1\n \t\t} else {\n \t\t\treturn 0;\n \t\t}\n \t}\n },\n onLoad() {\n \tlet lists : Array = []\n \tfor (let i = 0; i < 30; i++) {\n \t\tlists.push(\"item---\" + i)\n \t}\n \tthis.scrollData = lists\n },\n\t\tmethods: {\n onRefresherpulling(e : RefresherEvent) {\n \tthis.pullingDistance = e.detail.dy;\n },\n onRefresherrefresh() {\n \tthis.refresherTriggered = true\n \tsetTimeout(() => {\n \t\tthis.refresherTriggered = false\n \t\tthis.resetting = true;\n \t}, 1500)\n },\n onRefreshrestore() {\n this.pullingDistance = 0\n \tthis.resetting = false;\n },\n //自动化测试使用\n testBodyScrollBy(y: number) {\n this.scrollTop = y\n }\n\t\t}\n\t}\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.11 | 4.11 |\n","children":"","reference":"\n### 参见\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.nested-scroll-body)\n"},"nested-scroll-header":{"name":"## nested-scroll-header","description":"> 组件类型:UniNestedScrollHeaderElement \n\n scroll-view 嵌套模式场景中属于外层 scroll-view 的节点,仅支持作为 \\ 嵌套模式的直接子节点。不支持复数子节点,渲染时会取其第一个子节点来渲染","attribute":"","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/nested-scroll-header/nested-scroll-header.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/nested-scroll-header/nested-scroll-header\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n scrollData: [] as Array,\n\t\t\t}\n\t\t},\n onLoad() {\n \tlet lists : Array = []\n \tfor (let i = 0; i < 30; i++) {\n \t\tlists.push(\"item---\" + i)\n \t}\n \tthis.scrollData = lists\n },\n\t\tmethods: {\n\t\t}\n\t}\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| x | 4.11 | 4.11 |\n","children":"","reference":"\n### 参见\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.nested-scroll-header)\n"},"movable-view":{"name":"## movable-view","description":"可移动的视图容器,在页面中可以拖拽滑动","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| direction | string | - | | movable-view的移动方向,属性值有all、vertical、horizontal、none |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| all | - | - |\n@| vertical | - | - |\n@| horizontal | - | - |\n@| none | - | - |\n| inertia | boolean | - | | movable-view 是否带有惯性。 |\n| out-of-bounds | boolean | - | | 超过可移动区域后,movable-view 是否还可以移动。 |\n| x | string \\| number | - | | 定义 x 轴方向的偏移,如果 x 的值不在可移动范围内,会自动移动到可移动范围;改变 x 的值会触发动画。 |\n| y | string \\| number | - | | 定义 y 轴方向的偏移,如果 y 的值不在可移动范围内,会自动移动到可移动范围;改变 y 的值会触发动画。 |\n| damping | number | - | | 阻尼系数,用于控制 x 或 y 改变时的动画和过界回弹的动画,值越大移动越快。 |\n| friction | number | - | | 摩擦系数,用于控制惯性滑动的动画,值越大摩擦力越大,滑动越快停止;必须大于0,否则会被设置成默认值 2。 |\n| disabled | boolean | - | | 是否禁用。 |\n| scale | boolean | - | | 是否支持双指缩放,默认缩放手势生效区域是在 movable-view 内。 |\n| scale-min | number | - | | 定义缩放倍数最小值,默认为 0.5。 |\n| scale-max | number | - | | 定义缩放倍数最大值,默认为 10。 |\n| scale-value | number | - | | 定义缩放倍数,取值范围为 0.5 - 10 |\n| animation | boolean | - | | 是否使用动画,默认为 true。 |\n| @change | (event: [UniEvent](/component/common#unievent)) => void | - | | 拖动过程中触发的事件,event.detail = {x: x, y: y, source: source}。其中source表示产生移动的原因,值可为touch(拖动)、touch-out-of-bounds(超出移动范围)、out-of-bounds(超出移动范围后的回弹)、friction(惯性)和空字符串(setData)。 |\n| @scale | (event: [UniEvent](/component/common#unievent)) => void | - | | 缩放过程中触发的事件,event.detail = {x: x, y: y, scale: scale}。 |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/movable-view/movable-view.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/movable-view/movable-view\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tx: 0,\n\t\t\t\ty: 0,\n\t\t\t\tscale: 2,\n\t\t\t\told: {\n\t\t\t\t\tx: 0,\n\t\t\t\t\ty: 0,\n\t\t\t\t\tscale: 2\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tmethods: {\n\t\t\ttap: function(e) {\n\t\t\t\t// 解决view层不同步的问题\n\t\t\t\tthis.x = this.old.x\n\t\t\t\tthis.y = this.old.y\n\t\t\t\tthis.$nextTick(function() {\n\t\t\t\t\tthis.x = 30\n\t\t\t\t\tthis.y = 30\n\t\t\t\t})\n\t\t\t},\n\t\t\ttap2() {\n\t\t\t\t// 解决view层不同步的问题\n\t\t\t\tthis.scale = this.old.scale\n\t\t\t\tthis.scale = this.old.scale\n\t\t\t\tthis.$nextTick(function() {\n\t\t\t\t\tthis.scale = 3\n\t\t\t\t})\n\t\t\t},\n\t\t\tonChange: function(e) {\n\t\t\t\tthis.old.x = e.detail.x\n\t\t\t\tthis.old.y = e.detail.y\n\t\t\t},\n\t\t\tonScale: function(e) {\n\t\t\t\tthis.old.scale = e.detail.scale\n\t\t\t}\n\t\t}\n\t}\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/movable-view)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.movable-view)\n"},"label":{"name":"## label","description":"用来改进表单组件的可用性,使用for属性找到对应的id,或者将控件放在该标签下,当点击时,就会触发对应的控件","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| disabled | boolean | - | | 是否禁用 |\n| for | string | - | | 绑定控件的 id |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/label/label.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/label/label\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'label',\n checkboxItems: [{\n name: 'USA',\n value: '美国'\n },\n {\n name: 'CHN',\n value: '中国',\n checked: 'true'\n }\n ],\n radioItems: [{\n name: 'USA',\n value: '美国'\n },\n {\n name: 'CHN',\n value: '中国',\n checked: 'true'\n }\n ],\n hidden: false,\n checkboxValue: [] as string[],\n radioValue:''\n }\n },\n methods: {\n checkboxChange: function (e : UniCheckboxGroupChangeEvent) {\n console.log(e.detail.value)\n this.checkboxValue = e.detail.value\n },\n radioChange: function (e : UniRadioGroupChangeEvent) {\n console.log(e.detail.value)\n this.radioValue = e.detail.value\n }\n }\n }\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/label)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.label)\n"},"picker":{"name":"## picker","description":"从底部弹起的滚动选择器,现支持五种选择器,通过mode来区分,分别是普通选择器,多列选择器,时间选择器,日期选择器,省市区选择器,默认是普通选择器。","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| disabled | boolean | - | | 是否禁用 |\n| mode | string | - | | 选择器类型 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| selector | - | 普通选择器 |\n@| multiSelector | - | 多列选择器 |\n@| time | - | 时间选择器 |\n@| date | - | 日期选择器 |\n@| region | - | 省市选择器 |\n| range | array | - | | mode为 selector 或 multiSelector 时,range 有效 |\n| range-key | string | - | | 当 range 是一个 Object Array 时,通过 range-key 来指定 Object 中 key 的值作为选择器显示内容 |\n| value | string | - | | mode为select或multiSelector时:value 的值表示选择了 range 中的第几个(下标从 0 开始);mode为time时:表示选中的时间,格式为\"hh:mm\";mode为date时:表示选中的日期,格式为\"YYYY-MM-DD\";mode为region时:
\t\t表示选中的省市区,默认选中每一列的第一个值。 |\n| start | string | - | | mode为time:表示有效时间范围的开始,字符串格式为\"hh:mm\";mode为date:表示有效日期范围的开始,字符串格式为\"YYYY-MM-DD\" |\n| end | string | - | | mode为time:表示有效时间范围的结束,字符串格式为\"hh:mm\";mode为date:表示有效日期范围的结束,字符串格式为\"YYYY-MM-DD\" |\n| fields | string | - | | 有效值 year,month,day,表示选择器的粒度 |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| year | - | 选择器粒度为年 |\n@| month | - | 选择器粒度为月份 |\n@| day | - | 选择器粒度为天 |\n| custom-item | string | - | | 可为每一列的顶部添加一个自定义的项 |\n| @change | (event: [UniEvent](/component/common#unievent)) => void | - | | value 改变时触发 change 事件,event.detail = {value: value} |\n| @columnchange | (event: [UniEvent](/component/common#unievent)) => void | - | | 某一列的值改变时触发 columnchange 事件,event.detail = {column: column, value: value},column 的值表示改变了第几列(下标从0开始),value 的值表示变更值的下标 |\n| @cancel | (event: [UniEvent](/component/common#unievent)) => void | - | | 取消选择时触发 |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/picker/picker.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/picker/picker\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n\n\tfunction getDate(type?:string):string {\n\t\tconst date = new Date();\n\n\t\tlet year:string | number = date.getFullYear();\n\t\tlet month:string | number = date.getMonth() + 1;\n\t\tlet day:string | number = date.getDate();\n\n\t\tif (type === 'start') {\n\t\t\tyear = year - 10;\n\t\t} else if (type === 'end') {\n\t\t\tyear = year + 10;\n\t\t}\n\t\tmonth = month > 9 ? month : '0' + month;;\n\t\tday = day > 9 ? day : '0' + day;\n\n\t\treturn `${year}-${month}-${day}`;\n\t}\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\ttitle: 'picker',\n\t\t\t\tarray: [{name:'中国'},{name: '美国'}, {name:'巴西'}, {name:'日本'}],\n\t\t\t\tindex: 0,\n\t\t\t\tmultiArray: [\n\t\t\t\t\t['亚洲', '欧洲'],\n\t\t\t\t\t['中国', '日本'],\n\t\t\t\t\t['北京', '上海', '广州']\n\t\t\t\t],\n\t\t\t\tmultiIndex: [0, 0, 0],\n date:getDate(),\n\t\t\t\tstartDate:getDate('start'),\n\t\t\t\tendDate:getDate('end'),\n\t\t\t\ttime: '12:01'\n\t\t\t}\n\t\t},\n\t\tmethods: {\n\t\t\tbindPickerChange: function(e) {\n\t\t\t\tconsole.log('picker发送选择改变,携带值为:' + e.detail.value)\n\t\t\t\tthis.index = e.detail.value\n\t\t\t},\n\t\t\tbindMultiPickerColumnChange: function(e) {\n\t\t\t\tconsole.log('修改的列为:' + e.detail.column + ',值为:' + e.detail.value)\n\t\t\t\tthis.multiIndex[e.detail.column] = e.detail.value\n\t\t\t\tswitch (e.detail.column) {\n\t\t\t\t\tcase 0: //拖动第1列\n\t\t\t\t\t\tswitch (this.multiIndex[0]) {\n\t\t\t\t\t\t\tcase 0:\n\t\t\t\t\t\t\t\tthis.multiArray[1] = ['中国', '日本']\n\t\t\t\t\t\t\t\tthis.multiArray[2] = ['北京', '上海', '广州']\n\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\t\tthis.multiArray[1] = ['英国', '法国']\n\t\t\t\t\t\t\t\tthis.multiArray[2] = ['伦敦', '曼彻斯特']\n\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthis.multiIndex.splice(1, 1, 0)\n\t\t\t\t\t\tthis.multiIndex.splice(2, 1, 0)\n\t\t\t\t\t\tbreak\n\t\t\t\t\tcase 1: //拖动第2列\n\t\t\t\t\t\tswitch (this.multiIndex[0]) { //判断第一列是什么\n\t\t\t\t\t\t\tcase 0:\n\t\t\t\t\t\t\t\tswitch (this.multiIndex[1]) {\n\t\t\t\t\t\t\t\t\tcase 0:\n\t\t\t\t\t\t\t\t\t\tthis.multiArray[2] = ['北京', '上海', '广州']\n\t\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\t\t\t\tthis.multiArray[2] = ['东京','北海道']\n\t\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\t\tswitch (this.multiIndex[1]) {\n\t\t\t\t\t\t\t\t\tcase 0:\n\t\t\t\t\t\t\t\t\t\tthis.multiArray[2] = ['伦敦', '曼彻斯特']\n\t\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t\tcase 1:\n\t\t\t\t\t\t\t\t\t\tthis.multiArray[2] = ['巴黎', '马赛']\n\t\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthis.multiIndex.splice(2, 1, 0)\n\t\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t\tthis.$forceUpdate()\n\t\t\t},\n\t\t\tbindDateChange: function(e) {\n\t\t\t\tthis.date = e.detail.value\n\t\t\t},\n\t\t\tbindTimeChange: function(e) {\n\t\t\t\tthis.time = e.detail.value\n\t\t\t}\n\t\t}\n\t}\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/picker)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.picker)\n"},"map":{"name":"## map","description":"地图","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| longitude | number | - | | 中心经度 |\n| latitude | number | - | | 中心纬度 |\n| scale | number | - | | 缩放级别,取值范围为5-18 |\n| markers | array | - | | 标记点 |\n| covers | array | - | | 即将移除,请使用 markers |\n| polyline | array | - | | 路线 |\n| circles | array | - | | 圆 |\n| controls | array | - | | 控件 |\n| include-points | array | - | | 缩放视野以包含所有给定的坐标点 |\n| show-location | boolean | - | | 显示带有方向的当前定位点 |\n| @markertap | (event: [UniEvent](/component/common#unievent)) => void | - | | 点击标记点时触发 |\n| @callouttap | (event: [UniEvent](/component/common#unievent)) => void | - | | 点击标记点对应的气泡时触发 |\n| @controltap | (event: [UniEvent](/component/common#unievent)) => void | - | | 点击控件时触发 |\n| @regionchange | (event: [UniEvent](/component/common#unievent)) => void | - | | 视野发生变化时触发 |\n| @updated | (event: [UniEvent](/component/common#unievent)) => void | - | | 在地图渲染更新完成时触发 |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/map/map.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/map/map\n>Template\n```vue\n\n\n\n\n```\n>Script\n```uts\n\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\ttitle: 'map',\n\t\t\t\tlatitude: 39.909,\n\t\t\t\tlongitude: 116.39742,\n\t\t\t\tcovers: [{\n\t\t\t\t\tid: 1,\n\t\t\t\t\tlatitude: 39.9085,\n\t\t\t\t\tlongitude: 116.39747,\n\t\t\t\t\ticonPath: '../../../static/location.png',\n\t\t\t\t}, {\n\t\t\t\t\tid: 2,\n\t\t\t\t\tlatitude: 39.90,\n\t\t\t\t\tlongitude: 116.39,\n\t\t\t\t\ticonPath: '../../../static/location.png',\n\t\t\t\t}]\n\t\t\t}\n\t\t}\n\t}\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/map)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.map)\n"},"cover-view":{"name":"## cover-view","description":"覆盖在原生组件之上的文本视图,可覆盖的原生组件包括map、video、canvas、camera,只支持嵌套cover-view、cover-image","attribute":"","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/cover-view/cover-view.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/cover-view/cover-view\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tshowMap: false,\n latitude: 39.909,\n longitude: 116.39742\n\t\t\t};\n\t\t},\n\t\tonLoad() {\n this.showMap = true\n\t\t}\n\t}\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","children":"","reference":"\n### 参见\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.cover-view)\n"},"editor":{"name":"## editor","description":"富文本编辑器,可以对图片、文字进行编辑。","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| read-only | boolean | - | | 设置编辑器为只读。 |\n| placeholder | string | - | | 提示信息。 |\n| show-img-size | boolean | - | | 点击图片时显示图片大小控件。 |\n| show-img-toolbar | boolean | - | | 点击图片时显示工具栏控件。 |\n| show-img-resize | string | - | | 点击图片时显示修改尺寸控件。 |\n| @ready | (event: [UniEvent](/component/common#unievent)) => void | - | | 编辑器初始化完成时触发 |\n| @focus | (event: [UniEvent](/component/common#unievent)) => void | - | | 编辑器聚焦时触发,event.detail = {html, text, delta} |\n| @blur | (event: [UniEvent](/component/common#unievent)) => void | - | | 编辑器失去焦点时触发,detail = {html, text, delta} |\n| @input | (event: [UniEvent](/component/common#unievent)) => void | - | | 编辑器内容改变时触发,detail = {html, text, delta} |\n| @statuschange | (event: [UniEvent](/component/common#unievent)) => void | - | | 通过 Context 方法改变编辑器内样式时触发,返回选区已设置的样式 |","event":"","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/component/editor/editor.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/component/editor/editor\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n type Context = {\n \tid?: string;\n \tpageId?: number;\n }\n\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\treadOnly: false,\n\t\t\t\tformats: {},\n editorCtx:{} as Context,\n // 自动化测试\n autoTest:false,\n undoTest:false,\n redoTest:false,\n removeFormatTest:false\n\t\t\t}\n\t\t},\n\t\tonLoad() {\n\t\t\tuni.loadFontFace({\n\t\t\t\tfamily: 'Pacifico',\n\t\t\t\tsource: 'url(\"/static/font/Pacifico-Regular.ttf\")',\n\t\t\t\tsuccess() {\n\t\t\t\t\tconsole.log('success load font')\n\t\t\t\t},\n\t\t\t\tfail() {\n\t\t\t\t\tconsole.log('fail load font load')\n\t\t\t\t}\n\t\t\t})\n\t\t},\n\t\tmethods: {\n\t\t\treadOnlyChange() {\n\t\t\t\tthis.readOnly = !this.readOnly\n\t\t\t},\n\t\t\tonEditorReady() {\n\t\t\t\tuni.createSelectorQuery().select('#editor').context((res) => {\n\t\t\t\t\tthis.editorCtx = res.context\n\t\t\t\t}).exec()\n\t\t\t},\n // 自动化测试专用\n setContents(options) {\n \tthis.editorCtx.setContents({\n delta: {\n ops:options\n },\n success: (res) => {\n \tconsole.log('setContents-success', res)\n },\n fail: (err) => {\n \tconsole.log(err)\n }\n \t})\n },\n getCon() {\n \tthis.editorCtx.getContents({\n \t\tsuccess: (res) => {\n \t\t\tconsole.log('文本详情:', res)\n \t\t},\n \t\tfail: (err) => {\n \t\t\tconsole.log(err)\n \t\t}\n \t})\n },\n\t\t\tundo() {\n\t\t\t\tthis.editorCtx.undo({\n \t\tsuccess: (res) => {\n this.undoTest = true\n \t\t},\n \t\tfail: (err) => {\n this.undoTest = false\n \t\t}\n \t})\n\t\t\t},\n\t\t\tredo() {\n\t\t\t\tthis.editorCtx.redo({\n \t\tsuccess: (res) => {\n this.redoTest = true\n \t\t},\n \t\tfail: (err) => {\n this.redoTest = false\n \t\t}\n \t})\n\t\t\t},\n\t\t\tformat(e) {\n\t\t\t\tlet {name,value} = e.target.dataset\n\t\t\t\tif (!name) return\n\t\t\t\t// console.log('format', name, value)\n\t\t\t\tthis.editorCtx.format(name, value)\n\t\t\t},\n\t\t\tonStatusChange(e) {\n\t\t\t\tconst formats = e.detail\n\t\t\t\tthis.formats = formats\n\t\t\t},\n\t\t\tinsertDivider() {\n\t\t\t\tthis.editorCtx.insertDivider({\n\t\t\t\t\tsuccess: function() {\n\t\t\t\t\t\tconsole.log('insert divider success')\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t},\n clear() {\n this.editorCtx.clear({\n success: function(res) {\n console.log(\"clear success\")\n }\n })\n },\n\t\t\tclearShowModal() {\n uni.showModal({\n \ttitle: '清空编辑器',\n \tcontent: '确定清空编辑器全部内容?',\n \tsuccess: res => {\n \t\tif (res.confirm) {\n \t\t\tthis.clear()\n \t\t}\n \t}\n })\n\t\t\t},\n\t\t\tremoveFormat() {\n\t\t\t\tthis.editorCtx.removeFormat({\n \t\tsuccess: (res) => {\n \t\t\tconsole.log('removeFormat-success', res)\n this.removeFormatTest = true\n \t\t},\n \t\tfail: (err) => {\n this.removeFormatTest = false\n \t\t}\n \t})\n\t\t\t},\n\t\t\tinsertDate() {\n\t\t\t\tconst date = new Date()\n\t\t\t\tconst formatDate = `${date.getFullYear()}/${date.getMonth() + 1}/${date.getDate()}`\n\t\t\t\tthis.editorCtx.insertText({\n\t\t\t\t\ttext: formatDate\n\t\t\t\t})\n\t\t\t},\n insertImage(image){\n this.editorCtx.insertImage({\n src:image,\n alt: '图像',\n success: function() {\n console.log('insert image success')\n }\n })\n },\n\t\t\tchooseInsertImage() {\n uni.chooseImage({\n \tcount: 1,\n \tsuccess: (res) => {\n \t\tthis.insertImage(res.tempFilePaths[0])\n \t}\n })\n\t\t\t}\n\t\t}\n\t}\n\n```\n:::","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | x | x |\n","children":"","reference":"\n### 参见\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.editor)\n"}} +{"page-meta":{"name":"## page-meta","description":"页面元数据,用于设置页面的一些属性,如背景色、下拉刷新等","attribute":"","event":"","example":"","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.19 | x | x |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/page-meta.html)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.page-meta)\n"},"animation-view":{"name":"## animation-view","description":"Lottie 动画\n> 本 Component 是 uni ext component,需下载插件:[animation-view](https://ext.dcloud.net.cn/plugin?name=uni-animation-view)\n","attribute":"### 属性 \n| 名称 | 类型 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :-: | :- |\n| path | string | \"\" | | 动画资源地址,目前只支持绝对路径 |\n| loop | boolean | false | | 动画是否循环播放 |\n| autoplay | boolean | false | | 动画是否自动播放 |\n| action | string | \"stop\" | | 动画操作,可取值 play、pause、stop |\n@| 值名称 | 兼容性 | 描述 |\n@| :- | :-: | :- |\n@| play | | 播放 |\n@| pause | | 暂停 |\n@| stop | | 停止 |\n| hidden | boolean | false | | 是否隐藏动画 |\n| @ended | (event: [UniEvent](/component/common#unievent)) => void | - | | - |","event":"","example":"","compatibility":"\n### 兼容性\n| Web | Android | iOS |\n| :- | :- | :- |\n| - | 3.9 | 4.11 |\n","children":"","reference":"\n### 参见\n- [参见uni-app相关文档](https://uniapp.dcloud.io/component/animation-view.html)\n- [参见uni-app x相关文档](https://doc.dcloud.net.cn/uni-app-x/component/animation-view.html)\n- [插件市场](https://ext.dcloud.net.cn/plugin?id=10674)\n- [相关 Bug](https://issues.dcloud.net.cn/?mid=component.animation-view)\n"}} \ No newline at end of file diff --git a/docs/.vuepress/utils/utsUnicloudApiJson.json b/docs/.vuepress/utils/utsUnicloudApiJson.json index b7dca458..a58cb4ee 100644 --- a/docs/.vuepress/utils/utsUnicloudApiJson.json +++ b/docs/.vuepress/utils/utsUnicloudApiJson.json @@ -1 +1 @@ -{"uniCloud_props":{"name":"# uniCloud","description":"","param":"## 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| config | **UniCloudInitOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| provider | string | 是 | - | - | 服务商,目前支持 aliyun、tencent、alipay |\n@| spaceName | string | 否 | - | - | 服务空间名 |\n@| spaceId | string | 是 | - | - | 服务空间id |\n@| clientSecret | string | 否 | - | - | 阿里云clientSecret |\n@| endpoint | string | 否 | - | - | 阿里云endpoint |\n@| spaceAppId | string | 否 | - | - | 支付宝小程序云spaceAppId |\n@| accessKey | string | 否 | - | - | 支付宝小程序云accessKey |\n@| secretKey | string | 否 | - | - | 支付宝小程序云secretKey |\n| mixinDatacom | any | 是 | - | - | - | \n","returnValue":"","compatibility":"","tutorial":""},"callFunction":{"name":"## callFunction(options) @callfunction","description":"请求云函数","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **UniCloudCallFunctionOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| name | string ([string.CloudFunctionString](/uts/data-type.md#ide-string)) | 是 | - | - | 云函数名 |\n@| data | any | 否 | - | - | 云函数参数 | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<[UniCloudCallFunctionResult\\](#unicloudcallfunctionresult-values)> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| result | T | 是 | - | - | 云函数返回结果 |\n@| requestId | string | 否 | - | - | 云函数请求id | \n","compatibility":"### callFunction 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.unicloud-call-function.callFunction)\n"},"unicloud-call-function":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/unicloud-call-function/unicloud-call-function.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/unicloud-call-function/unicloud-call-function\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: '请求云函数',\n callFunctionResult: {},\n callFunctionError: {},\n genericDemoShowMessage: '',\n isUniTest: false\n }\n },\n onLoad() {\n },\n onUnload() {\n if (this.isUniTest) {\n uni.hideToast()\n }\n },\n methods: {\n notify(content : string, title : string) {\n if (!this.isUniTest) {\n uni.showModal({\n title,\n content,\n showCancel: false\n })\n } else {\n console.log(title, content)\n }\n },\n async callFunctionWithGeneric() : Promise {\n type EchoCfResult = {\n showMessage: string\n }\n uni.showLoading({\n title: '加载中...'\n })\n await uniCloud.callFunction({\n name: 'echo-cf',\n data: {\n num: 1,\n str: 'ABC'\n }\n }).then(res => {\n const result = res.result\n uni.hideLoading()\n this.genericDemoShowMessage = result.showMessage\n this.notify(result.showMessage, '提示')\n }).catch((err : any | null) => {\n const error = err as UniCloudError\n this.callFunctionError = {\n errCode: error.errCode,\n errMsg: error.errMsg\n }\n uni.hideLoading()\n this.notify(error.errMsg, '错误')\n })\n },\n async callFunction() : Promise {\n uni.showLoading({\n title: '加载中...'\n })\n await uniCloud.callFunction({\n name: 'echo-cf',\n data: {\n num: 1,\n str: 'ABC'\n }\n }).then(res => {\n const result = res.result\n this.callFunctionResult = result\n console.log(JSON.stringify(result))\n uni.hideLoading()\n this.notify(result['showMessage'] as string, '提示')\n }).catch((err : any | null) => {\n const error = err as UniCloudError\n this.callFunctionError = {\n errCode: error.errCode,\n errMsg: error.errMsg\n }\n uni.hideLoading()\n this.notify(error.errMsg, '错误')\n })\n }\n }\n }\n\n```\n:::"},"importObject":{"name":"## importObject(objectName, options?) @importobject","description":"引用云对象","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| objectName | string ([string.CloudObjectString](/uts/data-type.md#ide-string)) | 是 | - | - | - |\n| options | **UniCloudImportObjectOptions** | 否 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| customUI | boolean \\| null | 否 | - | - | 是否移除自动展示的ui |\n@| loadingOptions | **UniCloudImportObjectLoadingOptions** \\| null | 否 | - | - | loading界面配置 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| title | string \\| null | 否 | - | - | 加载框标题 |\n@@| mask | boolean \\| null | 否 | - | - | 加载框是否显示mask |\n@| errorOptions | **UniCloudImportObjectErrorOptions** \\| null | 否 | - | - | 错误提示配置 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| type | string \\| null | 否 | - | - | 错误提示类型,可以是modal或者toast |\n@@| retry | boolean \\| null | 否 | - | - | 是否显示重试按钮 | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudCloudObjectCaller](#unicloudcloudobjectcaller-values) |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| _obj | [InternalUniCloudCloudObject](#internalunicloudcloudobject-values) | 是 | - | - | - |\n##### InternalUniCloudCloudObject 的方法 @internalunicloudcloudobject-values \n\n##### callMethod(methodName, args) @callmethod\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| methodName | string | 是 | - | - | - |\n| args | Array\\ | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\ |\n \n\n###### callMethod 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### UniCloudCloudObjectCaller 的方法 @unicloudcloudobjectcaller-values \n\n#### _getArgs(args?) @_getargs\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| args | Array\\ | 否 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Array\\ |\n \n\n##### _getArgs 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### importObject 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.unicloud-import-object.importObject)\n"},"unicloud-import-object":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/unicloud-import-object/unicloud-import-object.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/unicloud-import-object/unicloud-import-object\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: '请求云对象',\n todoTitle: '学习编程',\n todoContent: '熟悉uts语法',\n returnTodoTitle: '',\n returnTodoContent: '',\n genericDemoReturnTodoTitle: '',\n genericDemoReturnTodoContent: '',\n failErrCode: '',\n failNumberErrCode: 0,\n successErrCode: -1,\n isUniTest: false\n }\n },\n methods: {\n notify(content : string, title : string) {\n if (!this.isUniTest) {\n uni.showModal({\n title,\n content,\n showCancel: false\n })\n } else {\n console.log(title, content)\n }\n },\n async addTodo() : Promise {\n const todo = uniCloud.importObject('todo', {\n customUI: this.isUniTest\n })\n const title = this.todoTitle\n const content = this.todoContent\n await todo.add(title, content).then((res : UTSJSONObject) => {\n this.returnTodoTitle = res['title'] as string\n this.returnTodoContent = res['content'] as string\n this.notify(res['showMessage'] as string, '提示')\n }).catch((err : any | null) => {\n console.log(err)\n const error = err as UniCloudError\n console.error(error)\n })\n },\n async addTodoWithGeneric() : Promise {\n type AddTodoResult = {\n title: string,\n content: string,\n showMessage: string\n }\n const todo = uniCloud.importObject('todo', {\n customUI: this.isUniTest\n })\n const title = this.todoTitle\n const content = this.todoContent\n await todo.add(title, content).then((res : AddTodoResult) => {\n this.genericDemoReturnTodoTitle = res.title\n this.genericDemoReturnTodoContent = res.content\n this.notify(res.showMessage, '提示')\n }).catch((err : any | null) => {\n console.log(err)\n const error = err as UniCloudError\n console.error(error)\n })\n },\n async randomFail() : Promise {\n const todoObj = uniCloud.importObject('todo', {\n errorOptions: {\n retry: true\n }\n })\n await todoObj.randomFail().then((res : UTSJSONObject) => {\n this.notify(res['showMessage'] as string, '提示')\n }).catch((err : any | null) => {\n const error = err as UniCloudError\n console.error(error)\n })\n },\n async fail() : Promise {\n const todo = uniCloud.importObject('todo', {\n customUI: this.isUniTest\n })\n await todo.fail().then((res : UTSJSONObject) => {\n this.notify('todo.fail应调用失败,此处错误的触发了成功回调', '错误')\n console.log('todo.fail: ', res);\n }).catch((err : any | null) => {\n const error = err as UniCloudError\n this.failErrCode = error.errCode as string\n console.error(error)\n })\n },\n async failWithNumberErrCode() : Promise {\n const todo = uniCloud.importObject('todo', {\n customUI: this.isUniTest\n })\n await todo.failWithNumberErrCode().then((res : UTSJSONObject) => {\n this.notify('todo.fail应调用失败,此处错误的触发了成功回调', '错误')\n console.log('todo.fail: ', res);\n }).catch((err : any | null) => {\n const error = err as UniCloudError\n this.failNumberErrCode = error.errCode as number\n console.error(error)\n })\n },\n async success() : Promise {\n const todo = uniCloud.importObject('todo', {\n customUI: this.isUniTest\n })\n await todo.success().then((res : UTSJSONObject) => {\n this.successErrCode = res['errCode'] as number\n this.notify(res['showMessage'] as string, '提示')\n }).catch((err : any | null) => {\n const error = err as UniCloudError\n console.error(error)\n })\n }\n }\n }\n\n```\n:::"},"uploadFile":{"name":"## uploadFile(options) @uploadfile","description":"上传文件到云存储","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [UniCloudUploadFileOptions](#uniclouduploadfileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | string | 是 | - | - | 文件路径 |\n@| cloudPath | string | 是 | - | - | 云端路径 |\n@| cloudPathAsRealPath | boolean | 否 | - | - | 是否以云端路径是否为真实路径保存上传的文件 | \n\n#### UniCloudUploadFileOptions 的方法 @uniclouduploadfileoptions-values \n\n#### onUploadProgress(options) @onuploadprogress\n上传进度回调\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **UniCloudUploadProgress** | 是 | - | - | 上传进度回调参数 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| loaded | number | 是 | - | - | 已上传大小 |\n@| total | number | 是 | - | - | 总大小 | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| any |\n \n\n##### onUploadProgress 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudUploadFileResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | string | 是 | - | - | 文件路径 |\n@| fileID | string | 是 | - | - | 文件id | \n","compatibility":"### uploadFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.unicloud-file-api.upload-file)\n"},"getTempFileURL":{"name":"## getTempFileURL(options) @gettempfileurl","description":"获取文件临时URL","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **UniCloudGetTempFileURLOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fileList | Array\\ | 是 | - | - | 文件列表 | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudGetTempFileURLResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fileList | Array\\<**UniCloudGetTempFileURLResultItem**\\> | 是 | - | - | 文件列表 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| fileID | string | 是 | - | - | 文件id |\n@@| tempFileURL | string | 是 | - | - | 文件临时url | \n","compatibility":"### getTempFileURL 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.unicloud-file-api.choose-and-upload-file)\n"},"chooseAndUploadFile":{"name":"## chooseAndUploadFile(options) @chooseanduploadfile","description":"选择并上传文件","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [UniCloudChooseAndUploadFileOptions](#unicloudchooseanduploadfileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| sourceType | Array\\ \\| null | 否 | - | - | |\n@| count | number \\| null | 否 | - | - | |\n@| sizeType | Array\\ \\| null | 否 | - | - | |\n@| extension | Array\\ \\| null | 否 | - | - | |\n@| compressed | boolean \\| null | 否 | - | - | |\n@| maxDuration | number \\| null | 否 | - | - | |\n@| camera | \"front\" \\| \"back\" | 否 | - | - | - |\n@| crop | ChooseImageCropOptions \\| null | 否 | - | - | |\n@| type | \"image\" \\| \"video\" \\| \"all\" | 是 | - | - | - | \n\n#### UniCloudChooseAndUploadFileOptions 的方法 @unicloudchooseanduploadfileoptions-values \n\n#### onChooseFile(arg) @onchoosefile\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| arg | **UniCloudChooseFileResult** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| tempFiles | Array\\<**UniCloudChooseFileItem**\\> | 是 | - | - | - |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| name | string | 是 | - | - | - |\n@@| path | string | 是 | - | - | - |\n@@| cloudPath | string | 是 | - | - | - |\n@@| cloudPathAsRealPath | boolean \\| null | 否 | - | - | |\n@@| url | string \\| null | 否 | - | - | |\n@@| errMsg | string \\| null | 否 | - | - | |\n@| tempFilePaths | Array\\ | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| void \\| null | 否 |\n \n\n##### onChooseFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onUploadProgress(arg) @onuploadprogress\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| arg | **UniCloudChooseAndUploadFileProgressEvent** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| index | number | 是 | - | - | - |\n@| loaded | number | 是 | - | - | - |\n@| total | number | 是 | - | - | - |\n@| tempFilePath | string | 是 | - | - | - |\n@| tempFile | **UniCloudChooseFileItem** | 是 | - | - | - |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| name | string | 是 | - | - | - |\n@@| path | string | 是 | - | - | - |\n@@| cloudPath | string | 是 | - | - | - |\n@@| cloudPathAsRealPath | boolean \\| null | 否 | - | - | |\n@@| url | string \\| null | 否 | - | - | |\n@@| errMsg | string \\| null | 否 | - | - | | \n\n##### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| void \\| null | 否 |\n \n\n##### onUploadProgress 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudChooseAndUploadFileResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| tempFiles | Array\\<**UniCloudChooseFileItem**\\> | 是 | - | - | - |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| name | string | 是 | - | - | - |\n@@| path | string | 是 | - | - | - |\n@@| cloudPath | string | 是 | - | - | - |\n@@| cloudPathAsRealPath | boolean \\| null | 否 | - | - | |\n@@| url | string \\| null | 否 | - | - | |\n@@| errMsg | string \\| null | 否 | - | - | |\n@| tempFilePaths | Array\\ | 是 | - | - | - | \n","compatibility":"### chooseAndUploadFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.unicloud-file-api.getTempFileURL)\n"},"unicloud-file-api":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/unicloud-file-api/unicloud-file-api.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/unicloud-file-api/unicloud-file-api\n>Template\n```vue\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: '云存储'\n }\n },\n onLoad() {\n },\n onUnload() {\n },\n methods: {\n uploadFile: function () {\n uni.chooseImage({\n count: 1,\n success(res) : void {\n uni.showLoading({\n title: '上传中...'\n })\n const tempFilePath = res.tempFilePaths[0]\n uniCloud.uploadFile({\n filePath: tempFilePath,\n cloudPath: 'test.jpg'\n })\n .then(function (res) {\n uni.hideLoading()\n console.log(res)\n uni.showModal({\n content: '上传成功',\n showCancel: false\n });\n })\n .catch(function (err : any | null) {\n uni.hideLoading()\n const error = err as UniCloudError\n uni.showModal({\n content: '上传失败,' + error.errMsg,\n showCancel: false\n });\n })\n // .finally((_: number) : void => {\n // uni.hideLoading()\n // })\n },\n fail(err) : void {\n console.error('chooseImage fail: ', err)\n }\n })\n },\n chooseAndUploadFile() {\n uniCloud.chooseAndUploadFile({\n type: 'image'\n }).then(function (res) {\n uni.hideLoading()\n console.log(res)\n uni.showModal({\n content: '上传成功',\n showCancel: false\n });\n })\n .catch(function (err : any | null) {\n uni.hideLoading()\n const error = err as UniCloudError\n uni.showModal({\n content: '上传失败,' + error.errMsg,\n showCancel: false\n });\n })\n }\n }\n }\n\n```\n:::"},"databaseForJQL":{"name":"## databaseForJQL() @databaseforjql","description":"获取数据库操作实例","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [Database](#database-values) |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| command | any | 是 | - | - | - |\n@| Geo | any | 是 | - | - | - |\n#### Database 的方法 @database-values \n\n#### collection(args?) @collection\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| args | Array\\ | 否 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [Collection](#collection-values) |\n\n##### Collection 的方法 @collection-values \n\n##### where(condition) @where\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| condition | any | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBFilter](#uniclouddbfilter-values) |\n\n##### UniCloudDBFilter 的方法 @uniclouddbfilter-values \n\n##### get(arg?) @get\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| arg | any \\| null | 否 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudDBGetResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| data | Array\\ | 是 | - | - | etResult = {
/** |\n@| count | number \\| null | 否 | - | - | JSONObject>;
/** |\n@| requestId | string | 否 | - | - | ber \\| null;
/ | \n\n###### get 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### count() @count\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudDBCountResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| total | number | 是 | - | - | ntResult = {
/** |\n@| requestId | string | 否 | - | - | al: number;
/ | \n\n###### count 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### update(data) @update\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | any | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudDBUpdateResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| updated | number | 是 | - | - | teResult = {
/** |\n@| requestId | string | 否 | - | - | ted: number;
/ | \n\n###### update 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### remove() @remove\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudDBRemoveResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| deleted | number | 是 | - | - | veResult = {
/** |\n@| requestId | string | 否 | - | - | ted: number;
/ | \n\n###### remove 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getTemp() @gettemp\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| any |\n \n\n###### getTemp 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### where(condition) @where\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| condition | any | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBFilter](#uniclouddbfilter-values) |\n \n\n###### where 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### doc(docId) @doc\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| docId | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBFilter](#uniclouddbfilter-values) |\n \n\n###### doc 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### field(filed) @field\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filed | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n\n##### UniCloudDBQuery 的方法 @uniclouddbquery-values \n\n##### get(arg?) @get\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| arg | any \\| null | 否 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<[UniCloudDBGetResult](#uniclouddbgetresult-values)> |\n \n\n###### get 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### count() @count\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<[UniCloudDBCountResult](#uniclouddbcountresult-values)> |\n \n\n###### count 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getTemp() @gettemp\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| any |\n \n\n###### getTemp 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### field(filed) @field\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filed | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### field 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### skip(num) @skip\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| num | number | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### skip 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### limit(num) @limit\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| num | number | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### limit 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### orderBy(order) @orderby\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| order | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### orderBy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### groupBy(field) @groupby\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| field | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### groupBy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### groupField(field) @groupfield\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| field | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### groupField 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### distinct(field) @distinct\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| field | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### distinct 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### geoNear(options) @geonear\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | any | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### geoNear 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n\n###### field 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### skip(num) @skip\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| num | number | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### skip 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### limit(num) @limit\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| num | number | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### limit 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### orderBy(order) @orderby\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| order | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### orderBy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### groupBy(field) @groupby\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| field | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### groupBy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### groupField(field) @groupfield\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| field | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### groupField 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### distinct(field) @distinct\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| field | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### distinct 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### geoNear(options) @geonear\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | any | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### geoNear 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n\n###### where 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### doc(docId) @doc\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| docId | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBFilter](#uniclouddbfilter-values) |\n \n\n###### doc 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### aggregate() @aggregate\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBFilter](#uniclouddbfilter-values) |\n \n\n###### aggregate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### foreignKey(foreignKey) @foreignkey\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| foreignKey | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBFilter](#uniclouddbfilter-values) |\n \n\n###### foreignKey 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### add(data) @add\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | any | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudDBAddResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| id | string | 是 | - | - | ddResult = {
/** |\n@| requestId | string | 否 | - | - | string;
/ | \n\n###### add 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### get(arg?) @get\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| arg | any \\| null | 否 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<[UniCloudDBGetResult](#uniclouddbgetresult-values)> |\n \n\n###### get 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### count() @count\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<[UniCloudDBCountResult](#uniclouddbcountresult-values)> |\n \n\n###### count 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getTemp() @gettemp\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| any |\n \n\n###### getTemp 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### field(filed) @field\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filed | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### field 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### skip(num) @skip\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| num | number | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### skip 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### limit(num) @limit\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| num | number | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### limit 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### orderBy(order) @orderby\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| order | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### orderBy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n\n##### collection 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### multiSend(args?) @multisend\n合并查询请求\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| args | Array\\ | 否 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudDBMultiSendResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| dataList | Array\\<**UniCloudDBMultiSendResultItem**\\> | 是 | - | - | SendResult = { |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| errCode | any | 是 | - | - | ResultItem = {
/**
错误码,可 |\n@@| errMsg | string | 是 | - | - | errCode : any |\n@@| data | Array\\ | 否 | - | - | Msg : stri |\n@| requestId | string | 否 | - | - | ndResultItem[\\] | \n\n##### multiSend 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 4.16 | 4.11 |\n\n \n","compatibility":"### databaseForJQL 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.91,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.unicloud-database.databaseForJQL)\n"},"unicloud-database":{"example":"## 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/unicloud-database/unicloud-database.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/unicloud-database/unicloud-database\n>Template\n```vue\n\n\n\n\n\n\n```\n>Script\n```uts\n\n export default {\n data() {\n return {\n title: 'ClientDB',\n addId: '',\n batchAddIds: [] as Array,\n batchAddinserted: 0,\n updateUpdated: 0,\n getData: [] as Array,\n getWithCommandData: [] as Array,\n removeDeleted: 0,\n lookupData: [] as Array,\n multiSendSuccessCount: 0,\n isUniTest: false\n }\n },\n computed: {\n dataTag() : string {\n return this.isUniTest ? 'default-tag' + Date.now() : 'default-tag'\n }\n },\n methods: {\n notify(content : string, title : string) {\n if (!this.isUniTest) {\n uni.showModal({\n title,\n content,\n showCancel: false\n })\n } else {\n console.log(title, content)\n }\n },\n async dbAdd() : Promise {\n uni.showLoading({\n title: '加载中...'\n })\n const db = uniCloud.databaseForJQL()\n await db.collection('type')\n .add({\n num: 1,\n tag: this.dataTag,\n date: new Date()\n })\n .then(res => {\n uni.hideLoading()\n console.log(res)\n this.addId = res.id\n this.notify(`新增成功,id: ${res.id}`, '提示')\n })\n .catch((err : any | null) => {\n uni.hideLoading()\n const error = err as UniCloudError\n this.notify(error.errMsg, '错误')\n })\n },\n async dbBatchAdd() : Promise {\n uni.showLoading({\n title: '加载中...'\n })\n const db = uniCloud.databaseForJQL()\n await db.collection('type')\n .add([{\n num: 2,\n tag: this.dataTag,\n }, {\n num: 3,\n tag: this.dataTag,\n }])\n .then((res) => {\n uni.hideLoading()\n console.log(res)\n console.log('JSON.stringify(res.inserted)', JSON.stringify(res.inserted))\n this.batchAddIds = res.ids\n this.batchAddinserted = res.inserted\n this.notify(`新增成功条数${res.inserted}, id列表: ${res.ids.join(',')}`, '提示')\n })\n .catch((err : any | null) => {\n uni.hideLoading()\n const error = err as UniCloudError\n this.notify(error.errMsg, '错误')\n })\n },\n async dbGet() : Promise {\n uni.showLoading({\n title: '加载中...'\n })\n const db = uniCloud.databaseForJQL()\n await db.collection('type')\n .where(\n `tag == \"${this.dataTag}\"`\n )\n .field('num, tag')\n .orderBy('num desc')\n .skip(1)\n .limit(2)\n .get()\n .then(res => {\n uni.hideLoading()\n console.log(res)\n this.getData = res.data\n this.notify(`获取成功,取到了${res.data.length}条数据`, '提示')\n })\n .catch((err : any | null) => {\n uni.hideLoading()\n const error = err as UniCloudError\n this.notify(error.errMsg, '错误')\n })\n },\n async dbGetWithCommand() : Promise {\n uni.showLoading({\n title: '加载中...'\n })\n const db = uniCloud.databaseForJQL()\n await db.collection('type')\n .where({\n num: db.command.gt(1),\n tag: this.dataTag\n })\n .field('num, tag')\n .orderBy('num desc')\n .skip(1)\n .limit(2)\n .get()\n .then(res => {\n uni.hideLoading()\n console.log(res)\n this.getWithCommandData = res.data\n this.notify(`获取成功,取到了${res.data.length}条数据`, '提示')\n })\n .catch((err : any | null) => {\n uni.hideLoading()\n const error = err as UniCloudError\n this.notify(error.errMsg, '错误')\n })\n },\n async dbUpdate() : Promise {\n uni.showLoading({\n title: '加载中...'\n })\n const db = uniCloud.databaseForJQL()\n await db.collection('type')\n .where(\n `tag == \"${this.dataTag}\"`\n )\n .update({\n num: 4\n })\n .then(res => {\n uni.hideLoading()\n console.log(res)\n this.updateUpdated = res.updated\n this.notify(`更新成功,更新了${res.updated}条数据`, '提示')\n })\n .catch((err : any | null) => {\n uni.hideLoading()\n const error = err as UniCloudError\n this.notify(error.errMsg, '错误')\n })\n },\n async dbRemove() : Promise {\n uni.showLoading({\n title: '加载中...'\n })\n const db = uniCloud.databaseForJQL()\n await db.collection('type')\n .where(\n `tag == \"${this.dataTag}\"`\n )\n .remove()\n .then(res => {\n uni.hideLoading()\n console.log(res)\n this.removeDeleted = res.deleted\n this.notify(`删除成功,删掉了${res.deleted}条数据`, '提示')\n })\n .catch((err : any | null) => {\n uni.hideLoading()\n const error = err as UniCloudError\n this.notify(error.errMsg, '错误')\n })\n },\n async dbLookupInit() : Promise {\n uni.showLoading({\n title: '加载中...'\n })\n const db = uniCloud.databaseForJQL()\n await db.collection('local')\n .where(`tag == \"${this.dataTag}\"`)\n .remove()\n .then(() : Promise => {\n return db.collection('foreign')\n .where(`tag == \"${this.dataTag}\"`)\n .remove()\n })\n .then(() : Promise => {\n return db.collection('local')\n .add([{\n id: \"local_1\",\n name: \"local_1_name\",\n tag: this.dataTag,\n foreign_id: \"foreign_1\"\n }, {\n id: \"local_2\",\n name: \"local_2_name\",\n tag: this.dataTag,\n foreign_id: \"foreign_2\"\n }])\n })\n .then(() : Promise => {\n return db.collection('foreign')\n .add([{\n id: \"foreign_1\",\n name: \"foreign_1_name\",\n tag: this.dataTag\n }, {\n id: \"foreign_2\",\n name: \"foreign_2_name\",\n tag: this.dataTag\n }])\n })\n .then((_) : void => {\n uni.hideLoading()\n this.notify('数据初始化成功', '提示')\n })\n .catch((err : any | null) => {\n uni.hideLoading()\n console.error(err)\n const error = err as UniCloudError\n this.notify(error.errMsg, '错误')\n })\n },\n async dbLookup() : Promise {\n uni.showLoading({\n title: '加载中...'\n })\n const db = uniCloud.databaseForJQL()\n const local = db.collection('local')\n .where(`tag == \"${this.dataTag}\"`)\n .getTemp()\n const foreign = db.collection('foreign')\n .where(`tag == \"${this.dataTag}\"`)\n .getTemp()\n await db.collection(local, foreign)\n .get()\n .then(res => {\n uni.hideLoading()\n console.log(res)\n this.lookupData = res.data\n this.notify(`联表查询成功,取到了${res.data.length}条数据`, '提示')\n })\n .catch((err : any | null) => {\n uni.hideLoading()\n const error = err as UniCloudError\n this.notify(error.errMsg, '错误')\n })\n },\n async dbMultiSend() : Promise {\n const db = uniCloud.databaseForJQL()\n const temp1 = db.collection('type')\n .where(\n 'tag == \"default-tag\"'\n ).getTemp()\n const temp2 = db.collection('type')\n .where(\n 'tag == \"default-tag\"'\n ).getTemp()\n await db.multiSend(temp1, temp2)\n .then(res => {\n uni.hideLoading()\n let successCount = 0\n for (let i = 0; i < res.dataList.length; i++) {\n const item = res.dataList[i]\n if(item.errCode == 0) {\n console.log(`第${i}个请求查询到${item.data!.length}条数据`)\n successCount++\n } else {\n console.error(`第${i}个请求查询失败,错误信息:${item.data!.length}`)\n }\n }\n this.multiSendSuccessCount = successCount\n this.notify(`合并查询成功,成功查询的语句条数为:${successCount}`, '提示')\n })\n .catch((err : any | null) => {\n uni.hideLoading()\n const error = err as UniCloudError\n console.error(err)\n this.notify(error.errMsg, '错误')\n })\n }\n }\n }\n\n```\n:::"},"onResponse":{"name":"## onResponse(callback) @onresponse","description":"监听响应事件","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (arg: [UniCloudResponseEvent](#unicloudresponseevent-values)) => any \\| null | 是 | - | - | - | \n\n#### UniCloudResponseEvent 的属性值 @unicloudresponseevent-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 响应事件类型 |\n| name | string | 是 | - | - | 响应事件由哪个云函数触发 |\n| content | any | 是 | - | - | 响应结果、错误内容 |\n","returnValue":"","compatibility":"### onResponse 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.unicloud-utils.get-current-user-info)\n"},"offResponse":{"name":"## offResponse(callback) @offresponse","description":"移除响应事件监听","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (arg: [UniCloudResponseEvent](#unicloudresponseevent-values)) => any \\| null | 是 | - | - | - | \n\n#### UniCloudResponseEvent 的属性值 @unicloudresponseevent-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 响应事件类型 |\n| name | string | 是 | - | - | 响应事件由哪个云函数触发 |\n| content | any | 是 | - | - | 响应结果、错误内容 |\n","returnValue":"","compatibility":"### offResponse 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.unicloud-utils.on-response)\n"},"onRefreshToken":{"name":"## onRefreshToken(callback) @onrefreshtoken","description":"监听token刷新事件","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (arg: [UniCloudResponseEvent](#unicloudresponseevent-values)) => any \\| null | 是 | - | - | - | \n\n#### UniCloudResponseEvent 的属性值 @unicloudresponseevent-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 响应事件类型 |\n| name | string | 是 | - | - | 响应事件由哪个云函数触发 |\n| content | any | 是 | - | - | 响应结果、错误内容 |\n","returnValue":"","compatibility":"### onRefreshToken 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.unicloud-utils.off-response)\n"},"offRefreshToken":{"name":"## offRefreshToken(callback) @offrefreshtoken","description":"移除token刷新事件监听","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (arg: [UniCloudResponseEvent](#unicloudresponseevent-values)) => any \\| null | 是 | - | - | - | \n\n#### UniCloudResponseEvent 的属性值 @unicloudresponseevent-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 响应事件类型 |\n| name | string | 是 | - | - | 响应事件由哪个云函数触发 |\n| content | any | 是 | - | - | 响应结果、错误内容 |\n","returnValue":"","compatibility":"### offRefreshToken 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.unicloud-utils.on-refresh-token)\n"},"getCurrentUserInfo":{"name":"## getCurrentUserInfo() @getcurrentuserinfo","description":"获取token内缓存的用户信息","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **UniCloudUserInfo** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| uid | string \\| null | 否 | - | - | UserInfo = {
/ |\n@| role | Array\\ | 是 | - | - | ing \\| null;
/ |\n@| permission | Array\\ | 是 | - | - | ay\\;
/ |\n@| tokenExpired | number | 是 | - | - | ay\\;
/** | \n","compatibility":"### getCurrentUserInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.unicloud-utils.off-refresh-token)\n"}} \ No newline at end of file +{"uniCloud_props":{"name":"# uniCloud","description":"","param":"## 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| config | **UniCloudInitOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| provider | string | 是 | - | - | 服务商,目前支持 aliyun、tencent、alipay |\n@| spaceName | string | 否 | - | - | 服务空间名 |\n@| spaceId | string | 是 | - | - | 服务空间id |\n@| clientSecret | string | 否 | - | - | 阿里云clientSecret |\n@| endpoint | string | 否 | - | - | 阿里云endpoint |\n@| spaceAppId | string | 否 | - | - | 支付宝小程序云spaceAppId |\n@| accessKey | string | 否 | - | - | 支付宝小程序云accessKey |\n@| secretKey | string | 否 | - | - | 支付宝小程序云secretKey |\n| mixinDatacom | any | 是 | - | - | - | \n","returnValue":"","compatibility":"","tutorial":""},"callFunction":{"name":"## callFunction(options) @callfunction","description":"请求云函数","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **UniCloudCallFunctionOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| name | string ([string.CloudFunctionString](/uts/data-type.md#ide-string)) | 是 | - | - | 云函数名 |\n@| data | any | 否 | - | - | 云函数参数 | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<[UniCloudCallFunctionResult\\](#unicloudcallfunctionresult-values)> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| result | T | 是 | - | - | 云函数返回结果 |\n@| requestId | string | 否 | - | - | 云函数请求id | \n","compatibility":"### callFunction 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.cloudFunction.callFunction)\n"},"importObject":{"name":"## importObject(objectName, options?) @importobject","description":"引用云对象","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| objectName | string ([string.CloudObjectString](/uts/data-type.md#ide-string)) | 是 | - | - | - |\n| options | **UniCloudImportObjectOptions** | 否 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| customUI | boolean \\| null | 否 | - | - | 是否移除自动展示的ui |\n@| loadingOptions | **UniCloudImportObjectLoadingOptions** \\| null | 否 | - | - | loading界面配置 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| title | string \\| null | 否 | - | - | 加载框标题 |\n@@| mask | boolean \\| null | 否 | - | - | 加载框是否显示mask |\n@| errorOptions | **UniCloudImportObjectErrorOptions** \\| null | 否 | - | - | 错误提示配置 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| type | string \\| null | 否 | - | - | 错误提示类型,可以是modal或者toast |\n@@| retry | boolean \\| null | 否 | - | - | 是否显示重试按钮 | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudCloudObjectCaller](#unicloudcloudobjectcaller-values) |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| _obj | [InternalUniCloudCloudObject](#internalunicloudcloudobject-values) | 是 | - | - | - |\n##### InternalUniCloudCloudObject 的方法 @internalunicloudcloudobject-values \n\n##### callMethod(methodName, args) @callmethod\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| methodName | string | 是 | - | - | - |\n| args | Array\\ | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\ |\n \n\n###### callMethod 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### UniCloudCloudObjectCaller 的方法 @unicloudcloudobjectcaller-values \n\n#### _getArgs(args?) @_getargs\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| args | Array\\ | 否 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Array\\ |\n \n\n##### _getArgs 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n","compatibility":"### importObject 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.cloudObject.importObject)\n"},"uploadFile":{"name":"## uploadFile(options) @uploadfile","description":"上传文件到云存储","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [UniCloudUploadFileOptions](#uniclouduploadfileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | string | 是 | - | - | 文件路径 |\n@| cloudPath | string | 是 | - | - | 云端路径 |\n@| cloudPathAsRealPath | boolean | 否 | - | - | 是否以云端路径是否为真实路径保存上传的文件 | \n\n#### UniCloudUploadFileOptions 的方法 @uniclouduploadfileoptions-values \n\n#### onUploadProgress(options) @onuploadprogress\n上传进度回调\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **UniCloudUploadProgress** | 是 | - | - | 上传进度回调参数 |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| loaded | number | 是 | - | - | 已上传大小 |\n@| total | number | 是 | - | - | 总大小 | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| any |\n \n\n##### onUploadProgress 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudUploadFileResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| filePath | string | 是 | - | - | 文件路径 |\n@| fileID | string | 是 | - | - | 文件id | \n","compatibility":"### uploadFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.cloudStorage.uploadFile)\n","example":"### 示例 \n> [hello uni-app x](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/alpha/pages/API/upload-file/upload-file.uvue) \n ::: preview https://hellouniappx.dcloud.net.cn/web/#/pages/API/upload-file/upload-file\n>Template\n```vue\n\r\n\r\n\r\n\n\n```\n>Script\n```uts\n\r\n // #ifdef APP\r\n import {\r\n testInovkeUploadFile,\r\n CommonOptions\r\n } from '@/uni_modules/test-invoke-network-api'\r\n // #endif\r\n\r\n export default {\r\n data() {\r\n return {\r\n title: 'uploadFile',\r\n imageSrc: '',\r\n task: null as UploadTask | null,\r\n //自动化测试例专用\r\n jest_result: false,\r\n }\r\n },\r\n onLoad() {\r\n },\r\n onUnload() {\r\n this.imageSrc = '';\r\n uni.hideLoading();\r\n this.task?.abort();\r\n },\r\n methods: {\r\n chooseImage: function () {\r\n uni.chooseImage({\r\n count: 1,\r\n sizeType: ['compressed'],\r\n sourceType: ['album'],\r\n success: (res) => {\r\n console.log('chooseImage success, temp path is', res.tempFilePaths[0])\r\n var imageSrc = res.tempFilePaths[0]\r\n uni.showLoading({\r\n title: '上传中'\r\n })\r\n this.task = uni.uploadFile({\r\n url: 'https://unidemo.dcloud.net.cn/upload', //仅为示例,非真实的接口地址\r\n filePath: imageSrc,\r\n name: 'file',\r\n formData: {\r\n 'user': 'test'\r\n },\r\n success: (res) => {\r\n console.log('uploadImage success, res is:', res)\r\n uni.hideLoading();\r\n uni.showToast({\r\n title: '上传成功',\r\n icon: 'success',\r\n duration: 1000\r\n })\r\n this.imageSrc = imageSrc\r\n },\r\n fail: (err) => {\r\n console.log('uploadImage fail', err);\r\n uni.hideLoading();\r\n uni.showModal({\r\n content: err.errMsg,\r\n showCancel: false\r\n });\r\n },\r\n });\r\n },\r\n fail: (err) => {\r\n console.log('chooseImage fail', err)\r\n }\r\n })\r\n },\r\n //自动化测试例专用\r\n jest_uploadFile() {\r\n const imageSrc = \"/static/uni.png\";\r\n this.task = uni.uploadFile({\r\n url: 'https://unidemo.dcloud.net.cn/upload', //仅为示例,非真实的接口地址\r\n filePath: imageSrc,\r\n name: 'file',\r\n formData: {\r\n 'user': 'test'\r\n },\r\n success: () => {\r\n this.jest_result = true;\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n })\r\n },\r\n jest_uploadFile_with_uni_env() {\n const filePath = `${uni.env.CACHE_PATH}/download/uni-app.png`\r\n uni.downloadFile({\r\n url: \"https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni-app.png\",\r\n filePath: filePath,\r\n success: () => {\r\n uni.uploadFile({\n url: 'https://unidemo.dcloud.net.cn/upload', //仅为示例,非真实的接口地址\n filePath: filePath,\n name: 'file',\n success: () => {\n this.jest_result = true;\n },\n fail: () => {\n this.jest_result = false;\n },\n })\n },\r\n fail: () => {\r\n this.jest_result = false\r\n }\r\n });\r\n },\r\n jest_set_cookie() {\r\n uni.request({\r\n url: \"https://request.dcloud.net.cn/api/http/header/setCookie\",\r\n method: \"GET\",\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\r\n this.jest_cookie_upload(true)\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\r\n\r\n jest_delete_cookie() {\r\n uni.request({\r\n url: \"https://request.dcloud.net.cn/api/http/header/deleteCookie\",\r\n method: \"GET\",\r\n timeout: 6000,\r\n sslVerify: false,\r\n withCredentials: false,\r\n firstIpv4: false,\r\n success: () => {\r\n this.jest_cookie_upload(false)\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n });\r\n },\r\n jest_cookie_upload(needCookie : boolean) {\r\n const imageSrc = \"/static/uni.png\";\r\n this.task = uni.uploadFile({\r\n url: 'https://request.dcloud.net.cn/api/http/header/upload',\r\n filePath: imageSrc,\r\n name: 'file',\r\n success: (res : UploadFileSuccess) => {\r\n const data = JSON.parseObject(res.data)\r\n const errCode = data?.getNumber(\"errCode\")\r\n if (errCode != null && errCode == 1000) {\r\n this.jest_result = needCookie ? false : true;\r\n } else {\r\n this.jest_result = needCookie ? true : false;\r\n }\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n })\r\n },\r\n jest_files_upload() {\r\n const imageSrc = \"/static/uni.png\";\r\n this.task = uni.uploadFile({\r\n url: 'https://unidemo.dcloud.net.cn/upload',\r\n files: [\r\n {\r\n name: \"file1\",\r\n uri: imageSrc\r\n } as UploadFileOptionFiles,\r\n {\r\n name: \"file2\",\r\n uri: imageSrc\r\n } as UploadFileOptionFiles\r\n ],\r\n success: (res : UploadFileSuccess) => {\r\n if (res.statusCode == 200) {\r\n this.jest_result = true;\r\n }\r\n },\r\n fail: () => {\r\n this.jest_result = false;\r\n },\r\n })\r\n },\r\n jest_uts_module_invoked() {\r\n // #ifdef APP\r\n testInovkeUploadFile({\r\n success: (res : any) => {\r\n console.log(\"success :\", res);\r\n this.jest_result = true\r\n },\r\n fail: (err : any) => {\r\n console.log(\"fail :\", err);\r\n this.jest_result = false\r\n }\r\n } as CommonOptions)\r\n // #endif\r\n }\r\n }\r\n }\r\n\n```\n:::"},"getTempFileURL":{"name":"## getTempFileURL(options) @gettempfileurl","description":"获取文件临时URL","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | **UniCloudGetTempFileURLOptions** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fileList | Array\\ | 是 | - | - | 文件列表 | \n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudGetTempFileURLResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| fileList | Array\\<**UniCloudGetTempFileURLResultItem**\\> | 是 | - | - | 文件列表 |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| fileID | string | 是 | - | - | 文件id |\n@@| tempFileURL | string | 是 | - | - | 文件临时url | \n","compatibility":"### getTempFileURL 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.cloudStorage.chooseAndUploadFile)\n"},"chooseAndUploadFile":{"name":"## chooseAndUploadFile(options) @chooseanduploadfile","description":"选择并上传文件","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | [UniCloudChooseAndUploadFileOptions](#unicloudchooseanduploadfileoptions-values) | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| sourceType | Array\\ \\| null | 否 | - | - | |\n@| count | number \\| null | 否 | - | - | |\n@| sizeType | Array\\ \\| null | 否 | - | - | |\n@| extension | Array\\ \\| null | 否 | - | - | |\n@| compressed | boolean \\| null | 否 | - | - | |\n@| maxDuration | number \\| null | 否 | - | - | |\n@| camera | \"front\" \\| \"back\" | 否 | - | - | - |\n@| crop | ChooseImageCropOptions \\| null | 否 | - | - | |\n@| type | \"image\" \\| \"video\" \\| \"all\" | 是 | - | - | - | \n\n#### UniCloudChooseAndUploadFileOptions 的方法 @unicloudchooseanduploadfileoptions-values \n\n#### onChooseFile(arg) @onchoosefile\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| arg | **UniCloudChooseFileResult** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| tempFiles | Array\\<**UniCloudChooseFileItem**\\> | 是 | - | - | - |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| name | string | 是 | - | - | - |\n@@| path | string | 是 | - | - | - |\n@@| cloudPath | string | 是 | - | - | - |\n@@| cloudPathAsRealPath | boolean \\| null | 否 | - | - | |\n@@| url | string \\| null | 否 | - | - | |\n@@| errMsg | string \\| null | 否 | - | - | |\n@| tempFilePaths | Array\\ | 是 | - | - | - | \n\n##### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| void \\| null | 否 |\n \n\n##### onChooseFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### onUploadProgress(arg) @onuploadprogress\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| arg | **UniCloudChooseAndUploadFileProgressEvent** | 是 | - | - | - |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| index | number | 是 | - | - | - |\n@| loaded | number | 是 | - | - | - |\n@| total | number | 是 | - | - | - |\n@| tempFilePath | string | 是 | - | - | - |\n@| tempFile | **UniCloudChooseFileItem** | 是 | - | - | - |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| name | string | 是 | - | - | - |\n@@| path | string | 是 | - | - | - |\n@@| cloudPath | string | 是 | - | - | - |\n@@| cloudPathAsRealPath | boolean \\| null | 否 | - | - | |\n@@| url | string \\| null | 否 | - | - | |\n@@| errMsg | string \\| null | 否 | - | - | | \n\n##### 返回值 \n\n| 类型 | 必备 |\n| :- | :- |\n| void \\| null | 否 |\n \n\n##### onUploadProgress 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudChooseAndUploadFileResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| tempFiles | Array\\<**UniCloudChooseFileItem**\\> | 是 | - | - | - |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| name | string | 是 | - | - | - |\n@@| path | string | 是 | - | - | - |\n@@| cloudPath | string | 是 | - | - | - |\n@@| cloudPathAsRealPath | boolean \\| null | 否 | - | - | |\n@@| url | string \\| null | 否 | - | - | |\n@@| errMsg | string \\| null | 否 | - | - | |\n@| tempFilePaths | Array\\ | 是 | - | - | - | \n","compatibility":"### chooseAndUploadFile 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.cloudStorage.getTempFileURL)\n"},"databaseForJQL":{"name":"## databaseForJQL() @databaseforjql","description":"获取数据库操作实例","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| [Database](#database-values) |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| command | any | 是 | - | - | - |\n@| Geo | any | 是 | - | - | - |\n#### Database 的方法 @database-values \n\n#### collection(args?) @collection\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| args | Array\\ | 否 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| [Collection](#collection-values) |\n\n##### Collection 的方法 @collection-values \n\n##### where(condition) @where\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| condition | any | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBFilter](#uniclouddbfilter-values) |\n\n##### UniCloudDBFilter 的方法 @uniclouddbfilter-values \n\n##### get(arg?) @get\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| arg | any \\| null | 否 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudDBGetResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| data | Array\\ | 是 | - | - | etResult = {
/** |\n@| count | number \\| null | 否 | - | - | JSONObject>;
/** |\n@| requestId | string | 否 | - | - | ber \\| null;
/ | \n\n###### get 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### count() @count\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudDBCountResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| total | number | 是 | - | - | ntResult = {
/** |\n@| requestId | string | 否 | - | - | al: number;
/ | \n\n###### count 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### update(data) @update\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | any | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudDBUpdateResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| updated | number | 是 | - | - | teResult = {
/** |\n@| requestId | string | 否 | - | - | ted: number;
/ | \n\n###### update 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### remove() @remove\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudDBRemoveResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| deleted | number | 是 | - | - | veResult = {
/** |\n@| requestId | string | 否 | - | - | ted: number;
/ | \n\n###### remove 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getTemp() @gettemp\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| any |\n \n\n###### getTemp 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### where(condition) @where\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| condition | any | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBFilter](#uniclouddbfilter-values) |\n \n\n###### where 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### doc(docId) @doc\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| docId | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBFilter](#uniclouddbfilter-values) |\n \n\n###### doc 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### field(filed) @field\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filed | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n\n##### UniCloudDBQuery 的方法 @uniclouddbquery-values \n\n##### get(arg?) @get\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| arg | any \\| null | 否 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<[UniCloudDBGetResult](#uniclouddbgetresult-values)> |\n \n\n###### get 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### count() @count\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<[UniCloudDBCountResult](#uniclouddbcountresult-values)> |\n \n\n###### count 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getTemp() @gettemp\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| any |\n \n\n###### getTemp 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### field(filed) @field\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filed | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### field 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### skip(num) @skip\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| num | number | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### skip 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### limit(num) @limit\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| num | number | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### limit 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### orderBy(order) @orderby\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| order | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### orderBy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### groupBy(field) @groupby\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| field | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### groupBy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### groupField(field) @groupfield\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| field | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### groupField 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### distinct(field) @distinct\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| field | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### distinct 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### geoNear(options) @geonear\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | any | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### geoNear 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n\n###### field 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### skip(num) @skip\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| num | number | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### skip 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### limit(num) @limit\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| num | number | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### limit 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### orderBy(order) @orderby\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| order | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### orderBy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### groupBy(field) @groupby\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| field | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### groupBy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### groupField(field) @groupfield\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| field | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### groupField 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### distinct(field) @distinct\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| field | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### distinct 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### geoNear(options) @geonear\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| options | any | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### geoNear 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n\n###### where 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### doc(docId) @doc\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| docId | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBFilter](#uniclouddbfilter-values) |\n \n\n###### doc 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### aggregate() @aggregate\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBFilter](#uniclouddbfilter-values) |\n \n\n###### aggregate 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### foreignKey(foreignKey) @foreignkey\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| foreignKey | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBFilter](#uniclouddbfilter-values) |\n \n\n###### foreignKey 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### add(data) @add\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| data | any | 是 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudDBAddResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| id | string | 是 | - | - | ddResult = {
/** |\n@| requestId | string | 否 | - | - | string;
/ | \n\n###### add 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### get(arg?) @get\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| arg | any \\| null | 否 | - | - | | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<[UniCloudDBGetResult](#uniclouddbgetresult-values)> |\n \n\n###### get 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### count() @count\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<[UniCloudDBCountResult](#uniclouddbcountresult-values)> |\n \n\n###### count 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### getTemp() @gettemp\n\n\n###### 返回值 \n\n| 类型 |\n| :- |\n| any |\n \n\n###### getTemp 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### field(filed) @field\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| filed | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### field 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### skip(num) @skip\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| num | number | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### skip 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### limit(num) @limit\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| num | number | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### limit 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n##### orderBy(order) @orderby\n\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| order | string | 是 | - | - | - | \n\n###### 返回值 \n\n| 类型 |\n| :- |\n| [UniCloudDBQuery](#uniclouddbquery-values) |\n \n\n###### orderBy 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n \n\n##### collection 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| - | - | - |\n\n\n#### multiSend(args?) @multisend\n合并查询请求\n##### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| args | Array\\ | 否 | - | - | - | \n\n##### 返回值 \n\n| 类型 |\n| :- |\n| Promise\\<**UniCloudDBMultiSendResult**> |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| dataList | Array\\<**UniCloudDBMultiSendResultItem**\\> | 是 | - | - | SendResult = { |\n@@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@@| :- | :- | :- | :- | :-: | :- |\n@@| errCode | any | 是 | - | - | ResultItem = {
/**
错误码,可 |\n@@| errMsg | string | 是 | - | - | errCode : any |\n@@| data | Array\\ | 否 | - | - | Msg : stri |\n@| requestId | string | 否 | - | - | ndResultItem[\\] | \n\n##### multiSend 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 4.16 | 4.11 |\n\n \n","compatibility":"### databaseForJQL 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.91,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.database.databaseForJQL)\n"},"onResponse":{"name":"## onResponse(callback) @onresponse","description":"监听响应事件","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (arg: [UniCloudResponseEvent](#unicloudresponseevent-values)) => any \\| null | 是 | - | - | - | \n\n#### UniCloudResponseEvent 的属性值 @unicloudresponseevent-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 响应事件类型 |\n| name | string | 是 | - | - | 响应事件由哪个云函数触发 |\n| content | any | 是 | - | - | 响应结果、错误内容 |\n","returnValue":"","compatibility":"### onResponse 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.utils.onResponse)\n"},"offResponse":{"name":"## offResponse(callback) @offresponse","description":"移除响应事件监听","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (arg: [UniCloudResponseEvent](#unicloudresponseevent-values)) => any \\| null | 是 | - | - | - | \n\n#### UniCloudResponseEvent 的属性值 @unicloudresponseevent-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 响应事件类型 |\n| name | string | 是 | - | - | 响应事件由哪个云函数触发 |\n| content | any | 是 | - | - | 响应结果、错误内容 |\n","returnValue":"","compatibility":"### offResponse 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.utils.offResponse)\n"},"onRefreshToken":{"name":"## onRefreshToken(callback) @onrefreshtoken","description":"监听token刷新事件","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (arg: [UniCloudResponseEvent](#unicloudresponseevent-values)) => any \\| null | 是 | - | - | - | \n\n#### UniCloudResponseEvent 的属性值 @unicloudresponseevent-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 响应事件类型 |\n| name | string | 是 | - | - | 响应事件由哪个云函数触发 |\n| content | any | 是 | - | - | 响应结果、错误内容 |\n","returnValue":"","compatibility":"### onRefreshToken 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.utils.onRefreshToken)\n"},"offRefreshToken":{"name":"## offRefreshToken(callback) @offrefreshtoken","description":"移除token刷新事件监听","param":"### 参数 \n\n| 名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| callback | (arg: [UniCloudResponseEvent](#unicloudresponseevent-values)) => any \\| null | 是 | - | - | - | \n\n#### UniCloudResponseEvent 的属性值 @unicloudresponseevent-values \n\n| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n| :- | :- | :- | :- | :-: | :- |\n| type | string | 是 | - | - | 响应事件类型 |\n| name | string | 是 | - | - | 响应事件由哪个云函数触发 |\n| content | any | 是 | - | - | 响应结果、错误内容 |\n","returnValue":"","compatibility":"### offRefreshToken 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.utils.offRefreshToken)\n"},"getCurrentUserInfo":{"name":"## getCurrentUserInfo() @getcurrentuserinfo","description":"获取token内缓存的用户信息","param":"","returnValue":"### 返回值 \n\n| 类型 |\n| :- |\n| **UniCloudUserInfo** |\n@| 名称 | 类型 | 必备 | 默认值 | 兼容性 | 描述 |\n@| :- | :- | :- | :- | :-: | :- |\n@| uid | string \\| null | 否 | - | - | UserInfo = {
/ |\n@| role | Array\\ | 是 | - | - | ing \\| null;
/ |\n@| permission | Array\\ | 是 | - | - | ay\\;
/ |\n@| tokenExpired | number | 是 | - | - | ay\\;
/** | \n","compatibility":"### getCurrentUserInfo 兼容性 \n| Web | Android | iOS |\n| :- | :- | :- |\n| 4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |\n","tutorial":"\n### 参见\n[相关 Bug](https://issues.dcloud.net.cn/?mid=api.unicloud.utils.getCurrentUserInfo)\n"}} \ No newline at end of file -- GitLab