Javascript 什么';使用React-setState()时,这些代码片段之间的差异
这两者有什么区别Javascript 什么';使用React-setState()时,这些代码片段之间的差异,javascript,reactjs,ecmascript-6,Javascript,Reactjs,Ecmascript 6,这两者有什么区别 this.setState((state)=>({ posts: state.posts.filter(post=> post.id !==postRemoved.id) })) 及 setState回调函数期望返回一个对象。在第二种情况下,您只是打开一个函数体,没有返回任何内容 当使用圆括号()包装时,将返回一个对象。这就是第一个选项可以正常工作的原因。主要区别在于第二个选项不起作用。隐式返回使用括号:(a
this.setState((state)=>({
posts: state.posts.filter(post=> post.id !==postRemoved.id)
}))
及
setState
回调函数期望返回一个对象。在第二种情况下,您只是打开一个函数体,没有返回任何内容
当使用圆括号
()
包装时,将返回一个对象。这就是第一个选项可以正常工作的原因。主要区别在于第二个选项不起作用。隐式返回使用括号:(args)=>()代码>而显式返回使用括号:(args)=>{returnnull;}代码>。相同的概念,但setState
需要一个对象:(args)=>({…})
或(args)=>{return{…};}
。作为参考,而不是
this.setState((state)=>{
posts: state.posts.filter(post=> post.id !==postRemoved.id)
})