Commit 07e0d43f0fcedd5a07789561f84e2bf566768a0e

Authored by qiang.tian
1 parent 3ecfe238

fix: 节点回显

@@ -98,6 +98,7 @@ export const useNodeFieldDisplay = ({ @@ -98,6 +98,7 @@ export const useNodeFieldDisplay = ({
98 ); 98 );
99 const [inputDisplay, setInputDisplay] = useState<React.ReactNode>(); 99 const [inputDisplay, setInputDisplay] = useState<React.ReactNode>();
100 const [optionalNodes, setOptionalNodes] = useState<FiledType[]>([]); // 根据 fieldType 过滤后的 nodes 100 const [optionalNodes, setOptionalNodes] = useState<FiledType[]>([]); // 根据 fieldType 过滤后的 nodes
  101 + const displayResolved = useRef<boolean>(false)
101 102
102 const getResultFieldMap = (optionalNodes: FiledType[]) => { 103 const getResultFieldMap = (optionalNodes: FiledType[]) => {
103 const resultMap: Record<string, FiledType | INode> = {}; 104 const resultMap: Record<string, FiledType | INode> = {};
@@ -159,10 +160,12 @@ export const useNodeFieldDisplay = ({ @@ -159,10 +160,12 @@ export const useNodeFieldDisplay = ({
159 160
160 const getDisplayConfig = async (val = value): Promise<FiledType[]> => { 161 const getDisplayConfig = async (val = value): Promise<FiledType[]> => {
161 return new Promise((resolve, reject) => { 162 return new Promise((resolve, reject) => {
  163 + if (displayResolved.current) resolve(handleGetDisplayConfig(val!))
162 resolveDisplayConfig.current = () => { 164 resolveDisplayConfig.current = () => {
163 try { 165 try {
164 console.log('handleGetDisplayConfig'); 166 console.log('handleGetDisplayConfig');
165 resolve(handleGetDisplayConfig(val!)); 167 resolve(handleGetDisplayConfig(val!));
  168 + displayResolved.current = true
166 } catch (error) { 169 } catch (error) {
167 reject(error); 170 reject(error);
168 } 171 }
@@ -424,7 +427,7 @@ export const useNodeFieldDisplay = ({ @@ -424,7 +427,7 @@ export const useNodeFieldDisplay = ({
424 newNodes = getEffectiveNodes(cloneDeep(newNodes)); 427 newNodes = getEffectiveNodes(cloneDeep(newNodes));
425 } 428 }
426 429
427 - console.log('newNodes', newNodes); 430 + // console.log('newNodes', newNodes);
428 setOptionalNodes(newNodes); 431 setOptionalNodes(newNodes);
429 resultFieldMap.current = getResultFieldMap(newNodes); 432 resultFieldMap.current = getResultFieldMap(newNodes);
430 resolveFieldResultMap.current?.(resultFieldMap.current); 433 resolveFieldResultMap.current?.(resultFieldMap.current);