From fc17bc541bf17bdcd6fa4480811b5fdef991da21 Mon Sep 17 00:00:00 2001 From: anovazzi1 Date: Fri, 23 Jun 2023 17:28:33 -0300 Subject: [PATCH] refactor(dropdownComponent): add useEffect hook to update internalValue when value prop changes to avoid stale data --- src/frontend/src/components/dropdownComponent/index.tsx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/frontend/src/components/dropdownComponent/index.tsx b/src/frontend/src/components/dropdownComponent/index.tsx index 0f4942198..2125a72c0 100644 --- a/src/frontend/src/components/dropdownComponent/index.tsx +++ b/src/frontend/src/components/dropdownComponent/index.tsx @@ -1,6 +1,6 @@ import { Listbox, Transition } from "@headlessui/react"; import { ChevronUpDownIcon, CheckIcon } from "@heroicons/react/24/outline"; -import { Fragment, useState } from "react"; +import { Fragment, useEffect, useState } from "react"; import { DropDownComponentType } from "../../types/components"; import { classNames } from "../../utils"; import { INPUT_STYLE } from "../../constants"; @@ -15,6 +15,9 @@ export default function Dropdown({ let [internalValue, setInternalValue] = useState( value === "" || !value ? "Choose an option" : value ); + useEffect(()=>{ + setInternalValue(value === "" || !value ? "Choose an option" : value) + },[value]) return ( <>