javascript - 我可以知道为什么在 React 中有时需要在箭头函数之前添加 const/var/let 吗?

标签 javascript reactjs ecmascript-6 arrow-functions

我只是感到很困惑,为什么我们需要在组件内的mapStateToProps箭头函数之前添加这个“const”。对于我们在 React 组件中编写的大多数其他箭头函数,我们不会在箭头函数之前放置 const 或 var 或 let 。我可以知道有什么区别吗?非常感谢!

const mapStateToProps = (state) => {
    return {
        user: state.user,
        math: state.math
    };
};

const mapDispatchToProps = (dispatch) => {
    return {
        setName: (name) => {
            dispatch(setName(name));
        },

    };
};
export default connect(mapStateToProps, mapDispatchToProps)(App);
handleNdcChange = selectedNdc => {
        this.setState({ selectedNdc });

};

<Select
     value={this.state.selectedNdc}
     onChange={this.handleNdcChange}
     options={ndcOptions}
/>

最佳答案

当您在类中添加方法时,该方法就是该类的一部分,因此例如:

class Test extends React.Components {
  myMethod = () => {}
}

然而,由于mapStateToProps位于类之外,因此需要声明它,这就是为什么您需要constvarlet

类是一个对象,因此在本例中,myMethod 是该对象的一部分。

mapStateToProps 位于类之外,因此由于不是对象的一部分,因此需要声明

关于javascript - 我可以知道为什么在 React 中有时需要在箭头函数之前添加 const/var/let 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56796616/

相关文章:

Javascript,我可以传递对当前对象的引用以在对象字面量定义中运行吗?

javascript - 使用 Babel 在线将 ES6 编译成 ES5

javascript - 使用 JavaScript 根据滚动位置应用 CSS 参数

javascript - 快速处理程序中的 es6 和谐箭头函数

javascript - 是否可以仅更改material-ui中样式 Prop 中的一个属性

javascript - 为一组元素动态创建回调函数

php - 如何在 HTML/Javascript 页面中插入 PHP 下拉列表

javascript - 如何在不刷新整个页面的情况下重新加载 DIV 内容

reactjs - 如果用户的浏览器不受支持,我可以呈现警告消息吗?

node.js - Amazon Cognito 确认密码失败并显示 (TypeError : Converting circular structure to JSON)