【问题标题】:Datatables in Blazor: Dispose() doesn't workBlazor 中的数据表:Dispose() 不起作用
【发布时间】:2021-05-20 18:05:05
【问题描述】:

根据DataTables.net 上的帖子,我成功地在我的 Blazor WebAssembly 上跨应用程序添加了 DataTables.net。我面临的问题是当我更改页面时。正如您在下图中看到的,对于我更改了 DataTables.net 的每个页面,我仍然拥有上一页的搜索栏。

在我添加的每个页面的代码中

public void Dispose()
{
    JSRuntime.InvokeAsync<bool>("DataTablesRemove", "#tableData");
}

DataTablesRemoveindex.html 中定义

function DataTablesRemove(table) {
    $(document).ready(function () {
        $(table).DataTable().destroy();
        // Removes the datatable wrapper from the dom.
        var elem = document.querySelector(table + '_wrapper');
        elem.parentNode.removeChild(elem);
    });
}

我该如何解决这个问题?

【问题讨论】:

    标签: c# blazor blazor-webassembly


    【解决方案1】:

    have to add @implements IDisposable 到你的页面/组件的顶部。

    否则 Dispose() 只是一个不会被调用的方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-18
      • 1970-01-01
      • 2019-11-17
      • 2021-05-05
      • 2013-11-07
      • 1970-01-01
      • 1970-01-01
      • 2015-04-24
      相关资源
      最近更新 更多