No se pueden obtener y configurar eficientemente los parámetros de consulta de URL en React. La aplicación utiliza el enrutador de reacción v4 y los ganchos como useHistory, useLocation no están disponibles. No puedo actualizar la versión del enrutador de reacción ya que la aplicación es una aplicación de gran producción.
En cada función de la aplicación hay varios filtros como fecha de inicio, fecha de finalización, etc. Necesito una forma de:
Actualmente lo que he probado es:
// Init React.useEffect(() => { const params = new URLSearchParams(location.search); const startDateParam = params.get('startDate'); const endDataParam = params.get('endDate'); const isDog = params.get('isDog'); //example if (startDateParam) setStartDate(startDateParam); else { params.set('startDate', startDate || ''); } if (endDateParam) setEndDate(endDateParam); else { params.set('endDate', endDate || ''); } },[]) React.useEffect(() => { const params = new URLSearchParams(location.search); const startDateParam = params.set('startDate', startDate); const endDataParam = params.set('endDate', endDate); },[startDate, endDate]); const [startDate, setStartDate] = useState( moment() .subtract(30, 'days') .format('YYYY-MM-DD') ); const [endDate, setEndDate] = useState(moment().format('YYYY-MM-DD'));Pero esto no está cambiando la URL como espero.
Necesito ayuda para cambiar la URL en mi implementación actual o una implementación completamente nueva (eficiente)