Razor Blazor.NET没有';不渲染组件。它只显示为HTML标记
最近,我遇到了一个问题,并能够通过清理解决方案来解决它。但是现在我也遇到了同样的问题,清理解决方案并不能修复我的bug。 在我的项目中,我使用modals来显示表单。因此,我使用EditForm创建了一个模态组件,以在数据库中生成一个新实体Razor Blazor.NET没有';不渲染组件。它只显示为HTML标记,razor,blazor,blazor-server-side,Razor,Blazor,Blazor Server Side,最近,我遇到了一个问题,并能够通过清理解决方案来解决它。但是现在我也遇到了同样的问题,清理解决方案并不能修复我的bug。 在我的项目中,我使用modals来显示表单。因此,我使用EditForm创建了一个模态组件,以在数据库中生成一个新实体 <div class="modal"> <div class="modal-body"> <div class="row"> <div class="col s12"&
<div class="modal">
<div class="modal-body">
<div class="row">
<div class="col s12">
<h5>New Item</h5>
</div>
</div>
<div class="row">
<EditForm Model="MyEntity" OnValidSubmit="OnValidSubmit" OnInvalidSubmit="OnInvalidSubmit">
<DataAnnotationsValidator />
<ValidationSummary></ValidationSummary>
<div class="input-field fixed col s12">
<InputText id="name" @bind-Value="MyEntity.Name" />
<label class="active" for="name">Name</label>
</div>
<div class="col s12">
<button class="right btn" type="submit">Create</button>
</div>
</EditForm>
</div>
</div>
<div class="modal-footer">
<button class="modal-close btn-flat">Close</button>
</div>
</div>
@code {
[Parameter]
public MyEntityClass MyEntity {get; set;}
[Parameter]
public EventCallback<Microsoft.AspNetCore.Components.Forms.EditContext> OnValidSubmit { get; set; }
[Parameter]
public EventCallback<Microsoft.AspNetCore.Components.Forms.EditContext> OnInvalidSubmit { get; set; }
}
新项目
名称
创造
接近
@代码{
[参数]
公共MyEntityClass MyEntity{get;set;}
[参数]
public EventCallback OnValidSubmit{get;set;}
[参数]
public EventCallback OnInvalidSubmit{get;set;}
}
在索引页面,我希望使用如下组件:
@page "/mypage"
<MyProject.Pages.Shared.MyModalComponent MyEntity="_newMyEntity" OnValidSubmit="HandleValidSubmit" InvalidSubmit="HandleOnInvalidSubmit" />
@*
Some more HTML Code ...
*@
@code{
private MyEntityClass _newMyEntity = new MyEntityClass();
void HandleValidSubmit()
{
// Write to Database ...
}
void HandleOnInvalidSubmit()
{
// Display Errormessage to User ...
}
}
@page”/mypage
@*
更多的HTML代码。。。
*@
@代码{
私有MyEntityClass _newMyEntity=新MyEntityClass();
void HandleValidSubmit()
{
//写入数据库。。。
}
void HandleOnInvalidSubmit()
{
//向用户显示错误消息。。。
}
}
Blazor不会呈现组件,它只是呈现为带有变量名的HTML标记:
现在来看一个奇怪的部分:在另一个页面上,我构建了一个表组件来显示复杂的数据,所有这些都很好!我错过什么了吗
我在Visual Studio 2019企业版16.4.4中使用.NET Core 3.1 Blazor服务器端,我发现了这种奇怪行为的原因:Visual Studio有时在创建新Blazor组件时不会将构建操作类型设置为“内容”。更换和重建后,所有工作正常 您正在使用哪个浏览器?我已经看到IE不显示表单,但似乎可以很好地呈现只读表。@RogerWolf我使用的是Edge和Firefox,两种浏览器都不显示我的模式。