我正在开发一个以图形方式呈现树结构的应用程序。树中有各种节点类型,每种类型都有一个相应的 Svelte 组件来渲染它。
该应用程序的功能之一是您可以单击并拖动树中的节点,并将其移动到不同的父节点。当将节点放到新位置时,底层数据结构会相应地转换,并且 Svelte 会更新视图。
问题是,被移动节点的组件实例被破坏(连同它的所有后代,可能是数百个节点),然后无论节点移动到哪里,整个事物都会从头开始重新创建。这是很多不必要的工作,并且有非常明显的滞后,而它本应该能够立即移动现有的组件实例和关联的 DOM 节点。
有什么方法可以提示 Svelte 应该重用该实例吗?
(每个节点上都有一个唯一的 ID,如果有帮助的话。)