我已经通过了guest
对象作为一种属性从一个 View 到下一个 View 。 guest
由各种属性组成 guest.name
, guest.age
, guest.email
等
位于将接收 guest
的 View 的类定义的开头我想从 this.props.guest.name
重构对象至guest.name
所以我设置如下:
class EditGuest extends Component {
const { guest } = this.props;
state = {
name: guest.name,
email: guest.email,
age: guest.age
};
render() {
...
...
...
...
}
export default EditGuest;
但是我收到错误 parsing error: unexpected token, expected '('
对于我重构的行 const { guest } = this.props
。如果我定义 guest
渲染函数中的对象可以正常工作,但在其外部定义时则不起作用。
这是怎么回事?
最佳答案
您应该将其写在构造函数中。类似于下面的内容
class EditGuest extends Component {
constructor(props) {
super(props);
const { guest } = props;
this.state = {
name: guest.name,
email: guest.email,
age: guest.age
};
}
render() {
...
...
...
...
}
}
export default EditGuest;
关于javascript - React Native/React - 在 render() 之前重构 prop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40336240/