我正在學習剃須刀。我有一個非常簡單的 Razor 組件(使用 MudBlazor 框架)Budget.razor
@page "/budget"
<PageTitle>Budget</PageTitle>
<MudGrid>
<MudItem xs="12" sm="6" md="4">
<p> Hello you @HelloConsole() </p>
</MudItem>
</MudGrid>
和一個部分類Budget.razor.cs:
namespace MyProject.Pages
{
public partial class Budget
{
protected void HelloConsole()
{
Console.WriteLine("Hello");
}
}
}
我在 Visual Studio 中收到錯誤:
Cannot implicitly convert type 'void' to 'object'
我究竟做錯了什么 ?
uj5u.com熱心網友回復:
<p> Hello you @HelloConsole() </p>
說把方法的輸出放在HelloConsole()這里。但是HelloConsole回傳一個 void - 正是錯誤所說的 - 渲染器無法處理。
這有效:
protected string HelloConsole()
{
Console.WriteLine("Hello");
return "I just wrote to the console";
}
補充回答:
在加載組件時執行一些代碼:
protected override void OnInitialized()
{
Console.WriteLine("Hello");
}
// or
protected override Task OnInitializedAsync()
{
Console.WriteLine("Hello");
return Task.CompletedTask;
}
uj5u.com熱心網友回復:
您正在寫入控制臺。Blazor 標記需要一個物件(因為它基本上呈現一組字串)。更改代碼以回傳“Hello”。那可行。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/367626.html
上一篇:在新的CheckBox()實體中添加Mousedown事件
下一篇:缺少Spring請求引數
