直接使用this.props或this.state与设置const

问题描述 投票:0回答:2

我是新来的反应者,在查看示例时,我发现许多教程并不直接使用this.propsthis.state。相反,他们将在函数的开头设置一个const。我已经互换使用了两者,而没有看到功能上的任何差异。

使用const有收获吗?

const {
    error
} = this.state;

{error && <p>{error.message}</p>}

vs

{this.state.error && <p>{this.state.error.message}</p>}
javascript reactjs const react-props react-state
2个回答
0
投票

这称为Destructuring,是ES6的功能。

在功能上没有区别,但是使用解构几乎没有好处。

首先是更清晰的代码。如果在代码块的顶部对对象进行解构,则对读者来说,将要使用的变量将更加清晰。

其次,它将对象属性放在局部变量中,这可以提高性能,尤其是在循环中多次使用变量的情况下。


0
投票

正如您自己所言,根本没有区别,这是事实。使用const的简单答案是

在您以这种方式定义之后

const {error} = this.state;

现在您可以在以下代码中仅使用术语(错误),而不必使用冗长的(this.state.error)所以只是为了简单

© www.soinside.com 2019 - 2024. All rights reserved.