گاهی پیش میاد که نیاز است فایلهای جاوا اسکریپتی که دارای متد $(document).ready(function () {}); هستند در کامپوننتهای ما مجدداً بارگذاری شوند. در این حالت باید روش زیر را در پیش بگیرید.
1- متد جاوااسکریپتی خود را داخل یک فایل js به شکل زیر قرار دهید:
window.SetPeityChart = () => {
$(document).ready(function () {
//Todo
});
}
2- در کامپوننت مورد نظرتون متد OnAfterRenderAsync را override کنید.
[Inject]
private IJSRuntime js { get; set; }
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
await js.InvokeVoidAsync("SetPeityChart");
}
}