为什么我的 Blazor @onclick MouseEventArg 不工作?

Why is my Blazor @onclick MouseEventArg not working?

我的 Blazor (.NET 5) 项目中有一个简单的 .RAZOR 组件,如下所示:

<div>
    <input id="searchInput" type="text" name="queryString" @bind="queryString" />
    <button type="button" @onclick="PerformSearch">Search</button>
</div>

@code {
    public String queryString;

    public void PerformSearch()
    {
        Console.WriteLine("Why aren't you working? - " + queryString);
    }
}

但是,当我单击该按钮时,根本不会调用 PerformSearch。我的代码中没有错误(编译时间或 运行 时间)。当我在 Console.Writeline() 行放置一个断点时,它根本不会到达那里,并且日志中没有任何内容告诉我为什么会发生(或不会)发生这种情况。

所以,我发现了问题所在。我删除了这一行:

<script src="_framework/blazor.server.js"></script>

来自 _Host.cshtml 页面。当我把它放回行尾时:

        <script src="~/js/jquery/jquery-3.5.1.slim.min.js"></script>
        <script src="~/js/popper/popper.min.js"></script>
        <script src="~/js/bootstrap/bootstrap.min.js"></script>
        <script src="~/js/JavaScript.js"></script>
        <script src="_framework/blazor.server.js"></script>
    </body>
</html>

一切重新开始。

这就是破坏我的页面的事实令人气愤,因为微软对 Blazor 的一大卖点是它不需要 JavaScript。

猜不到。


编辑: 要标记我的这个答案,blazor.server.js 将阻止您的任何其他 JavaScript 工作,无论它是否在阵容中排在第一位或最后一位。为了让您的 JavaScript 或 Blazor、jQuery 等正常工作,您需要遵循 THIS Whosebug 的回答。

希望对您有所帮助。