refactor(core,viewport): suspens transformation pane
This commit is contained in:
@@ -5,11 +5,13 @@ import { useVueFlow } from '../../composables'
|
|||||||
import NodeRenderer from '../NodeRenderer/NodeRenderer.vue'
|
import NodeRenderer from '../NodeRenderer/NodeRenderer.vue'
|
||||||
import EdgeRenderer from '../EdgeRenderer/EdgeRenderer.vue'
|
import EdgeRenderer from '../EdgeRenderer/EdgeRenderer.vue'
|
||||||
|
|
||||||
const { id, viewport, d3Zoom, d3Selection, dimensions } = useVueFlow()
|
const { id, viewport, d3Zoom, d3Selection, dimensions, fitViewOnInitDone } = useVueFlow()
|
||||||
|
|
||||||
const viewportReady = ref(!isClient)
|
const viewportReady = ref(!isClient)
|
||||||
|
|
||||||
until(() => !!(d3Zoom.value && d3Selection.value && dimensions.value.width > 0 && dimensions.value.height > 0))
|
await until(() => !!(d3Zoom.value && d3Selection.value && dimensions.value.width > 0 && dimensions.value.height > 0)).toBe(true)
|
||||||
|
|
||||||
|
until(fitViewOnInitDone)
|
||||||
.toBe(true)
|
.toBe(true)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
|
|||||||
@@ -402,9 +402,11 @@ export default {
|
|||||||
:is-selecting="isSelecting"
|
:is-selecting="isSelecting"
|
||||||
:class="{ connecting: !!connectionStartHandle, dragging: paneDragging, draggable: shouldPanOnDrag }"
|
:class="{ connecting: !!connectionStartHandle, dragging: paneDragging, draggable: shouldPanOnDrag }"
|
||||||
>
|
>
|
||||||
<Transform>
|
<Suspense>
|
||||||
<slot />
|
<Transform>
|
||||||
</Transform>
|
<slot />
|
||||||
|
</Transform>
|
||||||
|
</Suspense>
|
||||||
</Pane>
|
</Pane>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
Reference in New Issue
Block a user