首页 > 解决方案 > 如何用状态变量反应钩子替换对象值

问题描述

我有一个名为的状态变量

授权信息:

const [authInfo, setAuthinfo] = useState(null)

数据从 authInfo 状态显示如下:

{
  data:
  id:
  email:
  full_name:
  authorities: [{label: "admin", value: 1}, {label: "canEdit", value: 2}]
}
    

然后我有另一个数组。

const newAuthorities = [{label: 'canApprove', value 2}, {label: 'canDissaprove', value2}]

我希望将其存储在一个新的状态变量中,并复制旧的 authInfo,其中的值将权限替换为 newAuth 变量。

这是预期的输出

   {
      data:
      id:
      email:
      full_name:
      authorities: [{label: 'canApprove', value 2}, {label: 'canDissaprove', value2}]
    
    }

如何用另一个状态变量中的 newAuthorities 值替换 authority 值?

谢谢!

标签: reactjsreact-hooks

解决方案


const newAuthorities = [{label: 'canApprove', value 2}, {label: 'canDissaprove', value2}]
const data = {...authInfo}
data.authorities = newAuthorities
setAuthinfo(data)


推荐阅读