react setState Несколько вызовов подряд (например в useEffect) - staet не изменяется. Как использовать функцию

В связи с оптимизациями производительности вызовы "поряд" могут затирать один другой, в таком случае для setState рекомендуется (см. подробности) передавать функцию вместо значения, т.е. например, идущие подряд вызовы типа (внутри хука):

React.useEffect(
	() => {
		setState({ ...state, 
			type: props.defaultTypeId });
	},
	[props.defaultCampaignTypeId] 
);

React.useEffect(
	() => {
		setState({ ...state, 
			status: props.defaultStatusId });
	},
	[props.defaultCampaignStatusId]
);

можно заменить на те, что используют функцию:

React.useEffect(
	() => {
		setState((state) => {
			return { ...state, 
				type: props.defaultTypeId };
		});

	},
	[props.defaultCampaignTypeId] 
);

React.useEffect(
	() => {
		setState((state) => {
			return { ...state, 
				status: props.defaultStatusId };
		});
	},
	[props.defaultCampaignStatusId]
);