在React应用程序中解构vs点符号

时间:2017-06-20 06:58:03

标签: javascript reactjs

我注意到在许多React.js示例中,props在组件中使用之前会被解构。例如,以下内容来自React-Redux sample code

class AsyncApp extends Component {
    ....
    componentDidMount() {
        const { dispatch, selectedSubreddit } = this.props // <-- destructuring
        dispatch(fetchPostsIfNeeded(selectedSubreddit))
    }
    ....
}

代码是否等同于以下内容?这只是风格问题吗?

componentDidMount() {
    this.props.dispatch(fetchPostsIfNeeded(this.props.selectedSubreddit))
}

1 个答案:

答案 0 :(得分:2)

严格来说,它不是等价的,但两个序列最终会产生相同的结果。对于许多人来说,使用解构的例子可以更好地阅读。从理论上讲,具有解构的代码可以稍微快一些,但我怀疑是否有任何真实的生活差异,或者在两种风格之间进行选择时通常会考虑到这一点。