我在 Blazor 組件上使用了“onKeyPress”事件,即使我按下了一個鍵,它也不會觸發。
<div class="row">
<textarea id="test" class="form-control" @bind="text" @onkeypress="WordsLeft"></textarea>
<p>Words left: @(MaxCount - CurrentWordCount)</p>
</div>
@code {
[Parameter]
public int MaxCount { get; set; }
[Parameter]
public string text { get; set; } = string.Empty;
public int CurrentWordCount = 0;
public void WordsLeft(KeyboardEventArgs e)
{
...
}
}
為什么我的 WordsLeft 方法沒有被呼叫?
uj5u.com熱心網友回復:
你有沒有添加<script src="_framework/blazor.server.js"/>到.cshtml檔案?這需要放在宣告事件的組件之后。并確保_Imports.razor使用以下 using 陳述句將檔案添加到 Components 檔案夾中。
@using System.Net.Http
@using Microsoft.AspNetCore.Authorization
@using Microsoft.AspNetCore.Components.Authorization
@using Microsoft.AspNetCore.Components.Forms
@using Microsoft.AspNetCore.Components.Routing
@using Microsoft.AspNetCore.Components.Web
@using Microsoft.JSInterop
uj5u.com熱心網友回復:
(抱歉還不能評論但是)對我來說它確實呼叫了 WordsLeft 函式。您是否嘗試過除錯和單步執行?如果您需要更多幫助,我還有其他改進代碼的想法。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/328454.html
