Quiero asignar un valor a uno de los valores iniciales (referrerId), en función de si existen o no parámetros de URL. He omitido el otro código que creo que es irrelevante para esta pregunta. Cuando se carga el formulario, quiero que el campo referrerId se complete previamente con la identificación extraída de los parámetros de la URL.
<Form initialValues={{ referrerId: // if there are no parameters set string "none" : referrer's id, which is extracted from params, }} > <FormField label="Referrer's Id" name="referrerId" placeholder="Referrer's Id" type="text" /> </Form>Una forma de hacer esto posible es mediante el uso de la interfaz javascript URLSearchParams.
const parameters = new URLSearchParams(window.location.search); <Form initialValues={{ referrerId: `${parameters.get('referrer-id')}`, }} > <FormField label="Referrer's Id" name="referrerId" placeholder="Referrer's Id" type="text" /> </Form>y su url se verá algo como
https://mycoolwebsite.com/somepage?referrer-id=23221