From d7db87b0ca8198eb809c5b304d37160c74a72441 Mon Sep 17 00:00:00 2001 From: dukenv0307 Date: Fri, 4 Aug 2023 10:39:14 +0700 Subject: [PATCH 1/2] fix: state field not clear after selecting another country --- .../Profile/PersonalDetails/AddressPage.js | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/pages/settings/Profile/PersonalDetails/AddressPage.js b/src/pages/settings/Profile/PersonalDetails/AddressPage.js index 65c106a4e9a..8d8138ba507 100644 --- a/src/pages/settings/Profile/PersonalDetails/AddressPage.js +++ b/src/pages/settings/Profile/PersonalDetails/AddressPage.js @@ -69,7 +69,7 @@ function AddressPage({privatePersonalDetails}) { const address = lodashGet(privatePersonalDetails, 'address') || {}; const [street1, street2] = (address.street || '').split('\n'); - + const [state, setState] = useState(address.state); /** * @param {Function} translate - translate function * @param {Boolean} isUSAForm - selected country ISO code is US @@ -116,10 +116,15 @@ function AddressPage({privatePersonalDetails}) { }, []); const handleAddressChange = (value, key) => { - if (key !== 'country') { + if (key !== 'country' && key !== 'state') { + return; + } + if (key === 'country') { + setCurrentCountry(value); + setState(''); return; } - setCurrentCountry(value); + setState(value); }; if (lodashGet(privatePersonalDetails, 'isLoading', true)) { @@ -182,7 +187,8 @@ function AddressPage({privatePersonalDetails}) { ) : ( @@ -191,9 +197,10 @@ function AddressPage({privatePersonalDetails}) { label={translate('common.stateOrProvince')} accessibilityLabel={translate('common.stateOrProvince')} accessibilityRole={CONST.ACCESSIBILITY_ROLE.TEXT} - defaultValue={address.state || ''} + value={state} maxLength={CONST.FORM_CHARACTER_LIMIT} spellCheck={false} + onValueChange={handleAddressChange} /> )} From 559ff57cd467a2658f379bad530d0d345f681141 Mon Sep 17 00:00:00 2001 From: dukenv0307 Date: Fri, 4 Aug 2023 11:00:59 +0700 Subject: [PATCH 2/2] fix: issue --- src/pages/settings/Profile/PersonalDetails/AddressPage.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/settings/Profile/PersonalDetails/AddressPage.js b/src/pages/settings/Profile/PersonalDetails/AddressPage.js index 8d8138ba507..4c5603e4cdc 100644 --- a/src/pages/settings/Profile/PersonalDetails/AddressPage.js +++ b/src/pages/settings/Profile/PersonalDetails/AddressPage.js @@ -197,7 +197,7 @@ function AddressPage({privatePersonalDetails}) { label={translate('common.stateOrProvince')} accessibilityLabel={translate('common.stateOrProvince')} accessibilityRole={CONST.ACCESSIBILITY_ROLE.TEXT} - value={state} + value={state || ''} maxLength={CONST.FORM_CHARACTER_LIMIT} spellCheck={false} onValueChange={handleAddressChange}