promise.md 5.3 KB
Newer Older
D
DCloud_LXH 已提交
1 2
# Promise

W
wanganxp 已提交
3
Promise 对象表示异步操作最终的完成(或失败)以及其结果值。
D
DCloud_LXH 已提交
4 5 6 7 8 9 10 11 12

### Constructor(fn)

<!-- UTSJSON.Promise.Constructor.description -->

<!-- UTSJSON.Promise.Constructor.param -->

<!-- UTSJSON.Promise.Constructor.returnValue -->

M
mahaifeng 已提交
13 14
<!-- UTSJSON.Promise.Constructor.test -->

D
DCloud_LXH 已提交
15 16
<!-- UTSJSON.Promise.Constructor.compatibility -->

D
DCloud_LXH 已提交
17
### Constructor(fn)
D
DCloud_LXH 已提交
18 19 20 21 22 23 24

<!-- UTSJSON.Promise.Constructor_1.description -->

<!-- UTSJSON.Promise.Constructor_1.param -->

<!-- UTSJSON.Promise.Constructor_1.returnValue -->

M
mahaifeng 已提交
25 26
<!-- UTSJSON.Promise.Constructor_1.test -->

D
DCloud_LXH 已提交
27 28 29 30 31 32 33 34 35 36 37 38 39
<!-- UTSJSON.Promise.Constructor_1.compatibility -->

## 实例方法


### then()

<!-- UTSJSON.Promise.then.description -->

<!-- UTSJSON.Promise.then.param -->

<!-- UTSJSON.Promise.then.returnValue -->

M
mahaifeng 已提交
40 41
<!-- UTSJSON.Promise.then.test -->

D
DCloud_LXH 已提交
42 43
<!-- UTSJSON.Promise.then.compatibility -->

D
DCloud_LXH 已提交
44
### then(onFulfilled, onRejected?)
D
DCloud_LXH 已提交
45 46 47 48 49 50 51

<!-- UTSJSON.Promise.then_1.description -->

<!-- UTSJSON.Promise.then_1.param -->

<!-- UTSJSON.Promise.then_1.returnValue -->

M
mahaifeng 已提交
52 53
<!-- UTSJSON.Promise.then_1.test -->

D
DCloud_LXH 已提交
54 55
<!-- UTSJSON.Promise.then_1.compatibility -->

D
DCloud_LXH 已提交
56
### then(onFulfilled, onRejected?)
D
DCloud_LXH 已提交
57 58 59 60 61 62 63

<!-- UTSJSON.Promise.then_2.description -->

<!-- UTSJSON.Promise.then_2.param -->

<!-- UTSJSON.Promise.then_2.returnValue -->

M
mahaifeng 已提交
64 65
<!-- UTSJSON.Promise.then_2.test -->

D
DCloud_LXH 已提交
66 67
<!-- UTSJSON.Promise.then_2.compatibility -->

D
DCloud_LXH 已提交
68
### then(onFulfilled, onRejected?)
D
DCloud_LXH 已提交
69 70 71 72 73 74 75

<!-- UTSJSON.Promise.then_3.description -->

<!-- UTSJSON.Promise.then_3.param -->

<!-- UTSJSON.Promise.then_3.returnValue -->

M
mahaifeng 已提交
76 77
<!-- UTSJSON.Promise.then_3.test -->

D
DCloud_LXH 已提交
78 79
<!-- UTSJSON.Promise.then_3.compatibility -->

D
DCloud_LXH 已提交
80
### then(onFulfilled, onRejected?)
D
DCloud_LXH 已提交
81 82 83 84 85 86 87

<!-- UTSJSON.Promise.then_4.description -->

<!-- UTSJSON.Promise.then_4.param -->

<!-- UTSJSON.Promise.then_4.returnValue -->

M
mahaifeng 已提交
88 89
<!-- UTSJSON.Promise.then_4.test -->

D
DCloud_LXH 已提交
90 91 92 93 94 95 96 97 98 99
<!-- UTSJSON.Promise.then_4.compatibility -->

### catch()

<!-- UTSJSON.Promise.catch.description -->

<!-- UTSJSON.Promise.catch.param -->

<!-- UTSJSON.Promise.catch.returnValue -->

M
mahaifeng 已提交
100 101
<!-- UTSJSON.Promise.catch.test -->

D
DCloud_LXH 已提交
102 103
<!-- UTSJSON.Promise.catch.compatibility -->

D
DCloud_LXH 已提交
104
### catch(onRejected)
D
DCloud_LXH 已提交
105 106 107 108 109 110 111

<!-- UTSJSON.Promise.catch_1.description -->

<!-- UTSJSON.Promise.catch_1.param -->

<!-- UTSJSON.Promise.catch_1.returnValue -->

M
mahaifeng 已提交
112 113
<!-- UTSJSON.Promise.catch_1.test -->

D
DCloud_LXH 已提交
114 115
<!-- UTSJSON.Promise.catch_1.compatibility -->

D
DCloud_LXH 已提交
116
### catch(onRejected)
D
DCloud_LXH 已提交
117 118 119 120 121 122 123

<!-- UTSJSON.Promise.catch_2.description -->

<!-- UTSJSON.Promise.catch_2.param -->

<!-- UTSJSON.Promise.catch_2.returnValue -->

M
mahaifeng 已提交
124 125
<!-- UTSJSON.Promise.catch_2.test -->

D
DCloud_LXH 已提交
126 127
<!-- UTSJSON.Promise.catch_2.compatibility -->

D
DCloud_LXH 已提交
128
### catch(onRejected)
D
DCloud_LXH 已提交
129 130 131 132 133 134 135

<!-- UTSJSON.Promise.catch_3.description -->

<!-- UTSJSON.Promise.catch_3.param -->

<!-- UTSJSON.Promise.catch_3.returnValue -->

M
mahaifeng 已提交
136 137
<!-- UTSJSON.Promise.catch_3.test -->

D
DCloud_LXH 已提交
138 139
<!-- UTSJSON.Promise.catch_3.compatibility -->

D
DCloud_LXH 已提交
140
### catch(onRejected)
D
DCloud_LXH 已提交
141 142 143 144 145 146 147

<!-- UTSJSON.Promise.catch_4.description -->

<!-- UTSJSON.Promise.catch_4.param -->

<!-- UTSJSON.Promise.catch_4.returnValue -->

M
mahaifeng 已提交
148 149
<!-- UTSJSON.Promise.catch_4.test -->

D
DCloud_LXH 已提交
150 151 152 153 154 155 156 157 158 159
<!-- UTSJSON.Promise.catch_4.compatibility -->

### finally(callback)

<!-- UTSJSON.Promise.finally.description -->

<!-- UTSJSON.Promise.finally.param -->

<!-- UTSJSON.Promise.finally.returnValue -->

M
mahaifeng 已提交
160 161
<!-- UTSJSON.Promise.finally.test -->

D
DCloud_LXH 已提交
162 163 164 165 166 167 168 169 170 171
<!-- UTSJSON.Promise.finally.compatibility -->

### resolve()

<!-- UTSJSON.Promise.resolve.description -->

<!-- UTSJSON.Promise.resolve.param -->

<!-- UTSJSON.Promise.resolve.returnValue -->

M
mahaifeng 已提交
172 173
<!-- UTSJSON.Promise.resolve.test -->

D
DCloud_LXH 已提交
174 175
<!-- UTSJSON.Promise.resolve.compatibility -->

D
DCloud_LXH 已提交
176
### resolve(value)
D
DCloud_LXH 已提交
177 178 179 180 181 182 183

<!-- UTSJSON.Promise.resolve_1.description -->

<!-- UTSJSON.Promise.resolve_1.param -->

<!-- UTSJSON.Promise.resolve_1.returnValue -->

M
mahaifeng 已提交
184 185
<!-- UTSJSON.Promise.resolve_1.test -->

D
DCloud_LXH 已提交
186 187
<!-- UTSJSON.Promise.resolve_1.compatibility -->

D
DCloud_LXH 已提交
188
### resolve(value)
D
DCloud_LXH 已提交
189 190 191 192 193 194 195

<!-- UTSJSON.Promise.resolve_2.description -->

<!-- UTSJSON.Promise.resolve_2.param -->

<!-- UTSJSON.Promise.resolve_2.returnValue -->

M
mahaifeng 已提交
196 197
<!-- UTSJSON.Promise.resolve_2.test -->

D
DCloud_LXH 已提交
198 199 200 201 202 203 204 205 206 207
<!-- UTSJSON.Promise.resolve_2.compatibility -->

### reject(value?)

<!-- UTSJSON.Promise.reject.description -->

<!-- UTSJSON.Promise.reject.param -->

<!-- UTSJSON.Promise.reject.returnValue -->

M
mahaifeng 已提交
208 209
<!-- UTSJSON.Promise.reject.test -->

D
DCloud_LXH 已提交
210 211 212 213 214 215 216 217 218 219
<!-- UTSJSON.Promise.reject.compatibility -->

### all(arr)

<!-- UTSJSON.Promise.all.description -->

<!-- UTSJSON.Promise.all.param -->

<!-- UTSJSON.Promise.all.returnValue -->

M
mahaifeng 已提交
220 221
<!-- UTSJSON.Promise.all.test -->

D
DCloud_LXH 已提交
222 223 224 225 226 227 228 229 230 231
<!-- UTSJSON.Promise.all.compatibility -->

### race(arr)

<!-- UTSJSON.Promise.race.description -->

<!-- UTSJSON.Promise.race.param -->

<!-- UTSJSON.Promise.race.returnValue -->

M
mahaifeng 已提交
232 233
<!-- UTSJSON.Promise.race.test -->

D
DCloud_LXH 已提交
234 235 236 237 238 239 240 241 242 243
<!-- UTSJSON.Promise.race.compatibility -->

### any(arr)

<!-- UTSJSON.Promise.any.description -->

<!-- UTSJSON.Promise.any.param -->

<!-- UTSJSON.Promise.any.returnValue -->

M
mahaifeng 已提交
244 245
<!-- UTSJSON.Promise.any.test -->

D
DCloud_LXH 已提交
246 247 248 249 250 251 252 253 254 255
<!-- UTSJSON.Promise.any.compatibility -->

### allSettled(arr)

<!-- UTSJSON.Promise.allSettled.description -->

<!-- UTSJSON.Promise.allSettled.param -->

<!-- UTSJSON.Promise.allSettled.returnValue -->

M
mahaifeng 已提交
256 257
<!-- UTSJSON.Promise.allSettled.test -->

D
DCloud_LXH 已提交
258 259 260 261 262 263 264
<!-- UTSJSON.Promise.allSettled.compatibility -->

<!-- UTSJSON.Promise.tutorial -->

## Bug & Tips@tips

* 目前 Promise 类型编译到 kotlin 为 io.dcloud.uts.UTSPromise
lizhongyi_'s avatar
lizhongyi_ 已提交
265
* 自 HBuilder X 4.31 版本起支持编译到 swift。在 swift 中编译为 UTSPromise。在uvue里因为iOS默认js驱动所以可以使用Promise,没有 4.31 版本的限制。