useNodesInitialized
此钩子告诉你流中的所有节点是否都已测量并获得了宽度和高度。当你向流中添加节点时,此钩子将返回 false
,然后在节点被测量后再次返回 true
。
import { useReactFlow, useNodesInitialized } from '@xyflow/react';
import { useEffect, useState } from 'react';
const options = {
includeHiddenNodes: false,
};
export default function useLayout() {
const { getNodes } = useReactFlow();
const nodesInitialized = useNodesInitialized(options);
const [layoutedNodes, setLayoutedNodes] = useState(getNodes());
useEffect(() => {
if (nodesInitialized) {
setLayoutedNodes(yourLayoutingFunction(getNodes()));
}
}, [nodesInitialized]);
return layoutedNodes;
}
签名
名称 | 类型 | 默认 |
---|---|---|
#参数 |
|
|
# options | object |
|
# options.includeHiddenNodes? | boolean |
|
#返回 |
|
|
boolean 节点是否已由 <ReactFlow /> 组件初始化并获得宽度和高度。 |
|
备注
- 如果内部节点数组为空,此钩子始终返回
false
。