简体中文
安卓端this只会指向其所在的类的实例,而编译到js后this的值取决于它出现的上下文:函数、类或全局。参考: MDN this
以下述代码为例
<template>
<view></view>
</template>
<script>
export default {
data() {
return {
title: ''
}
},
methods: {
getTitle() {
uni.request({
url: 'xxx',
success() {
this.title = 'xxx'
}
})
}
}
}
</script>
上述代码中的this在安卓端会指向页面/组件实例,在web端会指向uni.request的参数。为保证多端一致,建议在上面的场景使用this时搭配箭头函数。上述代码修改为下面的写法后即可兼容多端
<template>
<view></view>
</template>
<script>
export default {
data() {
return {
title: ''
}
},
methods: {
getTitle() {
uni.request({
url: 'xxx',
success: () => {
this.title = 'xxx'
}
})
}
}
}
</script>
as
break
case
switch
搭配使用。catch
try
搭配使用,捕获程序异常。class
const
continue
debugger
default
switch
搭配,匹配不存在时做的事情,也可以用于 export
语句。delete
Javascript
平台)do
else
if
搭配使用。export
extends
class
继承。finally
try-catch
搭配使用。for
function
if
import
in
instanceof
new
class
实例。return
super
switch
this
throw
try
catch
搭配使用,捕获一个异常。typeof
var
void
while
with
Javascript
平台)yield
Javascript
平台)enum
implements
interface
let
package
private
protected
public
static
await
abstract
boolean
byte
char
double
final
float
goto
int
long
native
short
synchronized
transient
volatile