在 window 调整大小时触发 Blazor 事件

Fire a Blazor event on window resize

是否可以在 window 调整大小时调用 blazor 事件?每次用户调整 window.

大小时,我只需要重新启动布尔值 属性

我找到了解决我的问题的类似方法。

首先,在 index.html 文件上设置此脚本函数:

window.getWindowDimensions = function () {
    return {
        width: window.innerWidth,
        height: window.innerHeight
    };
};

然后在你要读取屏幕宽度的页面上你需要读取这个函数:

[Inject] IJSRuntime JSRuntime { get; set; }
protected int WindowWidth { get; set; }
protected override async Task OnInitializedAsync()
{
    var dimension = await JSRuntime.InvokeAsync<WindowDimension>("getWindowDimensions");
    WindowWidth = dimension.Width;
}

所以每次页面重新加载时我们都知道window的宽度。