从JavaScript调用Blazor方法

Pet*_*gel 7 javascript visual-studio blazor

我正在使用Visual Studio中的Blazor进行实验,特别是从JavaScript调用Blazor代码.我有理由相信我已经拥有了所有合适的库.但是,当我尝试使用invokeMethodAsync调用我的Blazor方法时,我收到消息"no .net call dispatcher has set".在我的Index.Html文件中,我有这个:

<script> DotNet.invokeMethodAsync("BlazorFour.App", "HelloYou").then(data => alert(data), reason => alert(reason)); </script>

(这是生成错误消息的警报(原因))

我已经在我的Blazor项目中添加了一个类文件,它包含:

using Microsoft.JSInterop;
using System.Threading.Tasks;
public class HelloWorld
{
[JSInvokable]
public static Task<string> HelloYou()
{
    return Task.FromResult("Hello, ");
}
}
Run Code Online (Sandbox Code Playgroud)

我已经使用了Visual Studio中的所有模板和dotnet -new blazor命令行实用程序来创建我的起始点,但在所有项目中都获得相同的消息.对我而言,我似乎错过了一些基本的东西.

Flo*_*res 0

我想这是一个计时问题,并不是所有内容都已加载/初始化。

您是否尝试过将 js 代码放入按钮 onclick 事件中?