Blazor列表渲染问题JsInterop-包​​含GIT LINK

问题描述

我为现有的javascript组件编写了一堆包装,通常是从jqwidgets库中获取。特别是在这种情况下,我的问题与JqxWindow组件有关。我将在下面粘贴所有相关代码,但首先我将解释发生了什么。

我有一个对象列表(在本例中为分配)。每当将任务添加到列表中时,它都会创建一个组件,该组件作为JqxWindow的包装器编写,并打开一个新窗口。 Windows的创建按预期工作。

问题:当我从列表中删除一个项目时,页面会重新渲染,并且始终从渲染角度删除列表中的最后一个项目。没有错误。我不是100%知道如何解决这个问题,这就是为什么我在这里发布。

以下是指向Git的链接https://github.com/TCrosmanDSI/JqWindowExample

解决方法

使用@key,以便渲染器知道哪些项目已更改

   <JqxWindowComponent @key="@windowId" Title="@windowId" InstanceId="@windowId" RemoveCallback="@DestroyWindow">