如何在浏览器&xB4;通过Blazor WebAssembly的s控制台?
在JavaScript中,我们可以使用以下调用将调试输出写入浏览器控制台:如何在浏览器&xB4;通过Blazor WebAssembly的s控制台?,blazor,blazor-client-side,asp.net-blazor,Blazor,Blazor Client Side,Asp.net Blazor,在JavaScript中,我们可以使用以下调用将调试输出写入浏览器控制台: console.log("My debug output."); Google Chrome中的输出: 如何通过Blazor WebAssembly将组件中的“我的调试输出”记录到浏览器控制台 <button @onclick="ClickEvent">OK</button> @code { private void ClickEvent() { // co
console.log("My debug output.");
Google Chrome中的输出:
如何通过Blazor WebAssembly将组件中的“我的调试输出”记录到浏览器控制台
<button @onclick="ClickEvent">OK</button>
@code {
private void ClickEvent()
{
// console.log("My debug output.");
}
}
OK
@代码{
私有void ClickEvent()
{
//log(“我的调试输出”);
}
}
我通常会这样做:
Console.WriteLine("My debug output.");
public class JsConsole
{
private readonly IJSRuntime JsRuntime;
public JsConsole(IJSRuntime jSRuntime)
{
this.JsRuntime = jSRuntime;
}
public async Task LogAsync(string message)
{
await this.JsRuntime.InvokeVoidAsync("console.log", message);
}
}
如果是Blazor WebAssembly,我会在浏览器控制台中看到消息
如果是Blazor服务器应用程序,我会在输出窗口中看到消息。(在输出窗口中,有一个下拉列表-选择:“ASP.NET核心Web服务器”)
希望这有帮助…您可以使用一个
ILogger
,它可以让您在控制台中写入警告或错误:
@使用Microsoft.Extensions.Logging
@注入ILogger\u记录器
...
@代码{
受保护的覆盖无效OnInitialized()
{
_logger.LogWarning(“警告”);
_logger.LogError(“错误”);
}
}
只要把一个变量装入板条箱,如果你的事情正常,就可以更改它。。比如说
<p>@message</p>
<button onclck=@Send></button>
@code {
private string message = "Don`t work";
public void Send()
{
message = "working"
}
}
@消息
@代码{
私有字符串message=“不工作”;
公共无效发送()
{
message=“正在工作”
}
}
我希望它能有所帮助……如果您使用Blazor服务器(而不是WebAssembly),则只能使用JSInterop向浏览器控制台写入内容。我编写了一个包装器类,如下所示:
Console.WriteLine("My debug output.");
public class JsConsole
{
private readonly IJSRuntime JsRuntime;
public JsConsole(IJSRuntime jSRuntime)
{
this.JsRuntime = jSRuntime;
}
public async Task LogAsync(string message)
{
await this.JsRuntime.InvokeVoidAsync("console.log", message);
}
}
然后在页面中,您可以插入JsConsole并使用它:
await this.JsConsole.Log(message); //Will show in the browser console.
我认为您可以在c#中使用
Console.WriteLine(“我的调试输出”)代码>资本比我想象的要频繁。是Console.WriteLine(“我的调试输出”);跨浏览器兼容?适用于Edge、Chrome和FF。谢谢。什么是输入窗口?ILogger: