fix(order-service): 避免配置输入时引导图重复刷新
This commit is contained in:
@@ -27,7 +27,7 @@ import {
|
||||
Typography,
|
||||
} from 'antd'
|
||||
import { useQuery, useQueryClient } from '@tanstack/react-query'
|
||||
import { useEffect, useMemo, useState } from 'react'
|
||||
import { useCallback, useEffect, useMemo, useState } from 'react'
|
||||
|
||||
import PercentTable from '@/components/common/PercentTable'
|
||||
import ImageUpload from '@/components/files/ImageUpload'
|
||||
@@ -133,6 +133,14 @@ export default function OrderServicePanel() {
|
||||
).length
|
||||
const selectedCategory = categories.find((item) => item.categoryId === selectedCategoryId) || null
|
||||
const profile = (selectedCategoryId ? profileByCategoryId.get(selectedCategoryId) : null) || null
|
||||
const guideFiles = useMemo(() => (guideImage ? [guideImage as UploadedFile] : []), [guideImage])
|
||||
const handleGuideImageChange = useCallback((files: UploadedFile[]) => {
|
||||
setGuideImage(files[0] || null)
|
||||
}, [])
|
||||
const uploadGuideImage = useCallback(
|
||||
(file: File, scene: string) => uploadFile(file, scene, 'admin'),
|
||||
[],
|
||||
)
|
||||
|
||||
useEffect(() => {
|
||||
if (selectedCategoryId !== null || categories.length === 0) return
|
||||
@@ -488,9 +496,9 @@ export default function OrderServicePanel() {
|
||||
scene="order-service"
|
||||
scope="admin"
|
||||
maxCount={1}
|
||||
value={guideImage ? [guideImage as UploadedFile] : []}
|
||||
onChange={(files) => setGuideImage(files[0] || null)}
|
||||
uploader={(file, scene) => uploadFile(file, scene, 'admin')}
|
||||
value={guideFiles}
|
||||
onChange={handleGuideImageChange}
|
||||
uploader={uploadGuideImage}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user