mirror of
https://github.com/PacktPublishing/Web-Development-with-Blazor-Second-Edition.git
synced 2025-12-06 05:32:03 +01:00
29 lines
822 B
Plaintext
29 lines
822 B
Plaintext
|
|
@inject Microsoft.JSInterop.IJSRuntime jsruntime
|
||
|
|
|
||
|
|
<div>
|
||
|
|
<div id="@id.ToString()"></div>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
@code
|
||
|
|
{
|
||
|
|
[Parameter] public string Json { get; set; }
|
||
|
|
private string id { get; set; } = "Highchart" + Guid.NewGuid().ToString();
|
||
|
|
|
||
|
|
|
||
|
|
protected override void OnParametersSet()
|
||
|
|
{
|
||
|
|
StateHasChanged();
|
||
|
|
base.OnParametersSet();
|
||
|
|
}
|
||
|
|
IJSObjectReference jsmodule;
|
||
|
|
protected async override Task OnAfterRenderAsync(bool firstRender)
|
||
|
|
{
|
||
|
|
if (!string.IsNullOrEmpty(Json))
|
||
|
|
{
|
||
|
|
jsmodule = await jsruntime.InvokeAsync<IJSObjectReference>("import", "/_content/Components/RazorComponents/HighChart.razor.js");
|
||
|
|
await jsmodule.InvokeAsync<string>("loadHighchart", new object[] { id, Json });
|
||
|
|
}
|
||
|
|
|
||
|
|
await base.OnAfterRenderAsync(firstRender);
|
||
|
|
}
|
||
|
|
}
|