[用Blazor单击Anchor时尝试替换HREF。
So in pseudo;
click =>调用函数=>替换HREF =>触发打开事件,但以新的HREF为目标
无法实现,语法应该是什么?
<a href="javascript: void(0)" @onclick="@(()=> GetCloudFileSignedUrl(context.FileName))">@context.FileName</a>
旁注请不要引用https://github.com/aspnet/AspNetCore/issues/5545。我正在问如何用与该问题无关的外部地址替换HREF值,因为此时可以使用javascript: void(0)
。
由于@daniherrera,我开始寻找正确的位置,并找出here中的答案
[Inject] public NavigationManager NavigationManager { get; set; }
[Inject] public IJSRuntime JsRuntime { get; set; }
public async Task NavigateToUrlAsync(string url, bool openInNewTab)
{
if (openInNewTab)
{
await JsRuntime.InvokeAsync<object>("open", url, "_blank");
}
else
{
NavigationManager.NavigateTo(url);
}
}