这段JS是代码的意思 主要是 ... 不知道是什么作用

新手上路,请多包涵
 const setState = (state, payload) => ({ ...state, ...payload }) 
 export default setState
阅读 2.8k
7 个回答

定义方法,导出

合并state的值呀

const setState = (state, payload) => ({ ...state, ...payload }) //定义一个叫setState的常量
export default setState //将setState这个常量导出并且全局或者局部引用

你还少了一个在外部引用
import{setState} from '' //引号内的是该常量的路径

...是es6的扩展运算符,可拆解具有Iterator 接口的对象,如数组、对象

除了基础的语法含义外,这个 setState 方法的业务含义是,以 state 为目标对象,合并 payload 对象到 state 中去,效果上等价于各种工具库中的 merge 或者 Object.assign 方法。

...是展开的意思, {...{a:1}} => {a:1}

对象合并

let a= {a:1,b:2}
let c= {d:4,f:5}
//代入参数
setState(a,b) //return {a:1,b:2,d:4,f:5}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题