0

每隔一段时间,当我加载我的页面时,我会收到此错误,这会阻止我的页面工作.. 很奇怪,因为我可以加载页面,3-4 次,一切都很好,但是当我尝试快速刷新我的页面时继承我得到这个错误..

堆 - Microsoft.JSInterop.JSException:找不到“搜索”(“搜索”未定义)。错误:找不到“搜索”(“搜索”未定义)。在 http://localhost:26661/_framework/blazor.server.js:1:67390 在 Array.forEach () 在 e.findFunction (http://localhost:26661/_framework/blazor.server.js:1:67350 ) at v (http://localhost:26661/_framework/blazor.server.js:1:69092) at http://localhost:26661/_framework/blazor.server.js:1:70038 at new Promise () at e.beginInvokeJSFromDotNet (http://localhost:26661/_framework/blazor.server.js:1:70011) 在 http://localhost:26661/_framework/blazor.server.js:1:26293 在 Array.forEach ()在 e.invokeClientMethod (http://localhost:26661/_framework/blazor.server.js:1:26263) 在 Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args) 在 Microsoft .

互操作调用 -

protected override async Task OnAfterRenderAsync(bool firstRender)
        {
            try
            {
                await Js.InvokeVoidAsync("search");
            }
            catch (Exception e)
            {
                ErrorIsHidden = false;
                ErrorDescription = e.ToString(); //Show error description on page
                StateHasChanged();
                throw;
            }
            
        }

JS-

function search(){$(document).ready(function () {
    $("#myInput").on("keyup", function () {
        var value = $(this).val().toLowerCase();
        $('div[data-role="apps"]').filter(function () {
            $(this).toggle($(this).text().toLowerCase().indexOf(value) > -1)
        });
    });
});}

PS ..我还认为在这种情况下,try-catch 将允许程序继续运行(显然)没有搜索功能?

关于进一步测试

这显然是不对的,但愚蠢的是,如果我再次将 JS 调用添加到 catch - JS 实际加载.. 我的错误出现了,但应用程序仍然崩溃,但 JS 工作(显然是因为错误已经届时注册)。

奇怪..不知道这里有什么问题。

4

0 回答 0