加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

reactjs – 从地图返回的React对象传播(ES6)

发布时间:2020-12-15 09:33:15 所属栏目:百科 来源:网络整理
导读:为什么这样有效: return elements.map((e)= {return Object.assign({},e,{selected:true})}); 但这不是: return elements.map((e)= {...e,{selected: true}}); ? ES6 / Babel / React的新手,怜悯. 更新: 搬到这之后(如建议的那样): return elements.map
为什么这样有效:

return elements.map((e)=> {return Object.assign({},e,{selected:true})});

但这不是:

return elements.map((e)=> {...e,{selected: true}});

ES6 / Babel / React的新手,怜悯.

更新:
搬到这之后(如建议的那样):

return elements.map(e => ({...e,selected: true }));

得到此错误:

unexpected token

虽然传播在项目的其他地方工作:

return [
            ...state,element(undefined,action)
        ]

解决方法

从箭头函数隐式返回一个对象应该包含在parens中,这样解释器就知道它不是一个块.

所以返回elements.map(e =>({… e,selected:true}));

还修复了selected属性的语法,它不应该像azium指出的那样用括号括起来.

见https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions

您的意外令牌错误可能是由于babel不支持建议的object spread.数组传播是es6.使用下面的答案中的插件将解决此问题.包含对象传播的首选方法是babel阶段0,因为您还可以获得其他很酷的功能,例如:: binding运算符.对象传播是第2阶段,因此如果您不想包含阶段1和0,也可以使用它.

https://babeljs.io/docs/plugins/preset-stage-0/

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读