微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Blazor Blazored.Typeahead 组件在清除文本框后抛出异常

如何解决Blazor Blazored.Typeahead 组件在清除文本框后抛出异常

嗨,我正在尝试解决这个问题一段时间,但似乎没有任何效果 我在我的项目中使用了 BazloredTypeahead 组件。我正在从我的模型中投标对象,我正在使用模板来获取我的对象字符串表示

这是我的代码的一些表示:

<EditForm Model="@ReservationModel" OnValidSubmit="@Submit">
    <FluentValidationValidator/>
    @if (ClientList != null && ClientList.Any())
    {
        <blazoredTypeahead SearchMethod="ClientSearch" @bind-Value="ReservationModel.Client" >
            <SelectedTemplate Context="template">
                @template.GetAutocompleteValue()
            </SelectedTemplate>
            <ResultTemplate Context="template">
                @template.GetAutocompleteValue()
            </ResultTemplate>
            <NotFoundTemplate>
                Client not found
            </NotFoundTemplate>
        </blazoredTypeahead>
    }
    <br/>
        <div class="col-12 row">
        <span class="col-2"></span>
        <input type="submit" class="form-control col-2 btn btn-primary" value="Submit"/>
    </div>
</EditForm>

这个组件认有一个清晰的图标,每次我点击它都会出现这个异常。

enter image description here

Error: System.ArgumentNullException: Value cannot be null. (Parameter 'model')
   at Microsoft.AspNetCore.Components.Forms.FieldIdentifier..ctor(Object model,String fieldName)
   at Microsoft.AspNetCore.Components.Forms.FieldIdentifier.Create[TField](Expression`1 accessor)
   at Microsoft.AspNetCore.Components.Forms.ValidationMessage`1.OnParameteRSSet()
   at Microsoft.AspNetCore.Components.ComponentBase.CallOnParameteRSSetAsync()
   at Microsoft.AspNetCore.Components.ComponentBase.SetParametersAsync(ParameterView parameters)
   at Microsoft.AspNetCore.Components.Rendering.ComponentState.SetDirectParameters(ParameterView parameters)
   at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.UpdateRetainedChildComponent(DiffContext& diffContext,Int32 oldComponentIndex,Int32 newComponentIndex)
   at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.AppendDiffEntriesForFramesWithSameSequence(DiffContext& diffContext,Int32 oldFrameIndex,Int32 newFrameIndex)
   at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.AppendDiffEntriesForRange(DiffContext& diffContext,Int32 oldStartIndex,Int32 oldEndindexExcl,Int32 newStartIndex,Int32 newEndindexExcl)
   at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.AppendDiffEntriesForFramesWithSameSequence(DiffContext& diffContext,Int32 newEndindexExcl)
   at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.ComputeDiff(Renderer renderer,RenderBatchBuilder batchBuilder,Int32 componentId,ArrayRange`1 oldTree,ArrayRange`1 newTree)
   at Microsoft.AspNetCore.Components.Rendering.ComponentState.RenderIntoBatch(RenderBatchBuilder batchBuilder,RenderFragment renderFragment)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.RenderInExistingBatch(RenderQueueEntry renderQueueEntry)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.ProcessRenderQueue()
e.log @ blazor.server.js:19

我确定我的对象最初不是空的。

我的 GetAutocompleteValue 方法

    public static string GetAutocompleteValue(this Client client)
    {
        return client == null ? string.Empty : $"{client.FirstName} {client.LastName} - {client.PhoneNumber}";
    }

所以一切正常,直到我点击“X”。我在使用不同的组件 (old issue) 时遇到了同样的问题,但似乎有异常跟着我 :( 我会提供任何帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?