在ES6中,是否可以创建局部变量,直接引用它们,而不是在前面添加 this.
,例如this.name
示例,在下面的代码中,我该怎么做才能一直编写{name}
而不是{this.name}
。 (在变量前面添加this.
有点麻烦!)
class User extend React.Component {
name = "Joe";
render() {
// is it possible to write {name} instead of {this.name}
return <div>{name}</div>
}
}
答案 0 :(得分:6)
这可以使用with
语句,但由于它与严格模式不兼容,因此在现代JS中没有任何价值。
否则无法执行此操作,并且由于this.name
不应与name
变量混淆,因此省略this
将是一个错误。
如果JSX中的this.name
影响可读性或多次使用,则可以对属性进行解构:
render() {
const { name } = this;
return <div>{name}</div>
}