{ return( checke-6ren">
gpt4 book ai didi

javascript - "(.....);"和 "{......}"在 react 中有什么区别?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:53:37 24 4
gpt4 key购买 nike

我收到以下代码的图像中显示的错误:

handlechange(event) {
this.setState (prevState => {
return(
checked : !prevState.checked
);});
}

但是当我将“返回”后的圆括号更改为 curl 时,它运行良好。我的意思是引擎盖下发生了什么?是什么导致错误消失?

handlechange(event) {
this.setState (prevState => {
return{
checked : !prevState.checked
}});
}

1

最佳答案

这不是 React 的事情。您的第一个示例只是无效的 JavaScript 语法。¹您的第二个示例是有效语法,返回通过对象初始值设定项创建的对象(通常称为对象“文字”,{checked: !prevState.checked}) .


¹ return 之后的 () 包裹了一个表达式,然后在表达式中你有 checked: !prevState.checked 看起来像带标签的声明。但是您不能在需要表达式的地方放置带标签的语句。


旁注:另一种写法是在参数列表中使用属性解构,在对象初始化器中使用简写属性:

handlechange(event) {
this.setState(({checked}) => {
checked = !checked;
return {checked};
});
}

关于javascript - "(.....);"和 "{......}"在 react 中有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53803952/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com