当我点击此处时:
<a href="@Routes.SignIn">Se connecter</a>
它不会立即进入“/SignIn”页面。它会等到页面加载后才进行更改,因此会停在上一页上。
因此,我在登录页面中的 onInitilizedAsync 上设置了一个计时器,它在更改之前实际上在主页上停止了。
.net 8 blazor web assembly 发生了什么?
请参阅此处的演示: https://drive.google.com/file/d/1U3IxObz8OvNaQ8iip4B1upxoBCeYZ6U_/view?usp=sharing
它会等到页面加载后才进行更改,因此会停滞在 上一页。
原因之一是预渲染现在在 .net 8 中默认启用
另外,请确保你没有打电话
System.Threading.Thread.Sleep(3000);
这会在生命周期事件中阻塞线程;
如果你想要逻辑延迟而不阻塞当前线程,你应该尝试使用
await Task.Delay(3000)