* fix utmparams

* add utmparams

* fix

* fix

* Optimized the JsonImportModal shutdown logic to ensure that UTM parameters and workflows are removed when closing.

* remove some import
This commit is contained in:
dreamer6680
2025-04-28 17:55:43 +08:00
committed by GitHub
parent 3a911c5130
commit e0b85ca4c2
3 changed files with 15 additions and 9 deletions

View File

@@ -55,13 +55,16 @@ const JsonImportModal = ({ onClose }: { onClose: () => void }) => {
const utmParams = getUtmParams();
if (utmParams.shortUrlContent) setValue('name', utmParams.shortUrlContent);
removeUtmWorkflow();
removeUtmParams();
},
{ manual: false }
);
const handleCloseJsonImportModal = () => {
onClose();
removeUtmParams();
removeUtmWorkflow();
};
const avatar = watch('avatar');
const {
File,
@@ -132,6 +135,8 @@ const JsonImportModal = ({ onClose }: { onClose: () => void }) => {
router.push(`/app/detail?appId=${id}`);
loadMyApps();
onClose();
removeUtmParams();
removeUtmWorkflow();
},
successToast: t('common:common.Create Success')
}
@@ -141,7 +146,6 @@ const JsonImportModal = ({ onClose }: { onClose: () => void }) => {
<>
<MyModal
isOpen
onClose={onClose}
isLoading={isCreating || isFetching}
title={t('app:type.Import from json')}
iconSrc="common/importLight"
@@ -182,7 +186,7 @@ const JsonImportModal = ({ onClose }: { onClose: () => void }) => {
</Box>
</ModalBody>
<ModalFooter gap={4}>
<Button variant={'whiteBase'} onClick={onClose}>
<Button variant={'whiteBase'} onClick={handleCloseJsonImportModal}>
{t('common:common.Cancel')}
</Button>
<Button onClick={handleSubmit(onSubmit)}>{t('common:common.Confirm')}</Button>

View File

@@ -128,7 +128,9 @@ export const useInitApp = () => {
...(utm_medium && { shortUrlMedium: utm_medium }),
...(utm_content && { shortUrlContent: utm_content })
};
setUtmParams(utmParams);
if (utm_workflow) {
setUtmParams(utmParams);
}
setFastGPTSem({ keyword: k, ...utmParams });
const newPath = getPathWithoutMarketingParams();

View File

@@ -20,14 +20,14 @@ export const setBdVId = (bdVid?: string) => {
};
export const getUtmWorkflow = () => {
return sessionStorage.getItem('utm_workflow') || undefined;
return localStorage.getItem('utm_workflow') || undefined;
};
export const setUtmWorkflow = (utmWorkflow?: string) => {
if (!utmWorkflow) return;
sessionStorage.setItem('utm_workflow', utmWorkflow);
localStorage.setItem('utm_workflow', utmWorkflow);
};
export const removeUtmWorkflow = () => {
sessionStorage.removeItem('utm_workflow');
localStorage.removeItem('utm_workflow');
};
export const getUtmParams = () => {