Blazor搜索功能不更新模板问题求助
Blazor组件搜索输入后无法筛选更新DOM的解决方案
问题出在SearchText的定义上——你用了字段而非属性,Blazor的双向绑定机制依赖属性的setter来触发组件重新渲染,字段值的变化不会自动通知Blazor更新UI。
修改步骤:
把SearchText从字段改成自动属性:
// 原代码(字段) public string SearchText = ""; // 修改后(自动属性) public string SearchText { get; set; } = "";
原理说明:
Blazor会对组件的属性变更进行跟踪,当通过@bind-value修改属性值时,Blazor会自动触发组件的状态变更检测,进而重新计算FilteredZone并更新DOM。而字段的修改不会触发这个检测流程,所以输入搜索文本后UI没有变化。
你的FilteredZone是表达式体属性,只要SearchText变成可跟踪的属性,每次SearchText变化时,FilteredZone都会重新计算,表格内容也会自动更新。
内容的提问来源于stack exchange,提问作者Kevin
相关产品推荐
相关产品推荐

