Reactjs React-更新数组中嵌套对象的状态

Reactjs React-更新数组中嵌套对象的状态,reactjs,state,immutability,spread,Reactjs,State,Immutability,Spread,我的数据结构如下: selectionMenuData = [ { id: 'overview', title: 'Overview', icon: 'user-check', selected: false }, { id: 'about', title: 'About', icon: 'info-circle', selected: false, children: [ { id: 'profile', title: 'Profile', selected: fa

我的数据结构如下:

selectionMenuData = [
{ id: 'overview', title: 'Overview', icon: 'user-check', selected: false },
{
  id: 'about',
  title: 'About',
  icon: 'info-circle',
  selected: false,
  children: [
    { id: 'profile', title: 'Profile', selected: false },
    { id: 'communicationStyle', title: 'Communication Style', selected: false },
    { id: 'decisionMaking', title: 'Decision Making', selected: false },
    { id: 'strengths', title: 'Strengths', selected: false }
  ]
},
{
  id: 'development',
  title: 'Development',
  icon: 'seedling',
  selected: false,
  children: [
    { id: 'howToManage', title: 'How To Manage', selected: false },
    { id: 'howToOnboard', title: 'How To Onboard', selected: false },
    { id: 'leadershipStyle', title: 'Leadership Style', selected: false }
  ]
},
{ id: 'interviewGuide', title: 'Interview Guide', icon: 'comments', selected: false }
])

我想更新一个子对象,即{id:'profile',title:'profile',selected:false},并将selected属性设置为true

我正在使用useState并将这些数据存储在那里,因此要进行更新,我有如下方法:

const [menuState, setMenuState] = useState(selectionMenuData);

setMenuState({
    ...menuState,
    ...menuState[item],
    selected: true
  })
我怎样才能正确设置它

谢谢