首页 > 解决方案 > 使用反应钩子从子组件更新父数组数据

问题描述

我是新来的反应。

我有一组记录,并想使用 handleChange 设置其中一个记录数据

下面是父组件

const RecordPreview = ({ matchRecords, homeTeamId, awayTeamId, isAdmin, isRecordAdmin }) => {

  const [records, setRecords] = useState(matchRecords);
  const teams = useSelector(selectTeams, shallowEqual)
  const dispatch = useDispatch();

  const selectedId = 0;

  useEffect(() => {
    setRecords(matchRecords)
  }, [matchRecords]);

  useEffect(() => {
    setRecords(records)
  }, [records]);


  const handleChange = records.First.Id(??) = event => {
    //setRecords({ ...records.find(record => record.id === event.value), scoreMemberId: event.value })

    // const { name, value } = event.target;

    // setMembers({ ...members, [name]: value });
    // member => setRecords({ ...records, scoreMemberId: member.value })
  }

从孩子开始,我有一个记录数据,并尝试将 record.id 传递给父级并使用所选值设置匹配的 recordId。

      <CustomDropdown
            name='member'
            value={assistMemberId}
            handleChange={handleChange(record.id)}
            options={memberOptions.filter(member => member.teamId === teamId)}
            required
        /> :

我的问题是是否有办法从子组件更新 selectedDropdownValue 以更新父数组。

谢谢你的帮助。

标签: reactjsreact-hooks

解决方案


推荐阅读