blazor - 如何在 Blazor 服务器端模拟延迟?
问题描述
我有一个 Blazor 服务器端应用程序,我将托管在离我的主要用户将使用的地方不那么近的服务器上,我想模拟某些功能是否可以在一些延迟下使用,或者延迟是否真的会影响它.
但是我无法在开发时测试延迟,并且我不想每次想要测试一些更改时都在服务器中运行构建。
我已经尝试了很多东西,比如减少 chrome 开发人员工具中的互联网连接,但这与来自遥远主机的延迟不同。
如何在 Blazor 服务器端模拟延迟?
解决方案
您可以在异步任务函数中使用 Task.Delay() 方法,就在获取一些数据之前或在执行您需要模拟的事情之前。
下一个示例是一个 blazor 组件,它在单击 Button 后假装从服务器加载消息(MessageFromServer 属性)。await Task.Delay 方法添加了额外的等待时间。
@MessageFromServer
<button @onclick="ElaborateDataOnServer">Load Data</button>
@code{
public string MessageFromServer { get; set; } = string.Empty;
public async Task ElaborateDataOnServer()
{
//simulate the waiting
await Task.Delay(1000);
MessageFromServer = "loaded from server";
}
}
推荐阅读
- pandas - 获得较少相关的变量名称
- apache-spark - 如何使用 Spark SQL SPLIT 函数将输入传递给 Spark SQL IN 参数
- visual-studio-code - 修改 vscode `workspaceStorage` 文件夹路径
- laravel-5 - Laravel + Vue.js - 特定地址的 CORS 问题?
- python - 在自定义 Keras 层中使用带有 tf.py_func 的 python 代码
- java - Java JPA - 将多对多结构保存到数据库 - 错误:尝试从空的一对一属性分配 id
- python - 实时人脸识别在树莓派3上跑得很慢
- list - 多个列表haskell
- javascript - 我们可以将浏览器 JavaScript 的执行上下文从 Window 对象更改为其他对象吗?
- javascript - 用户将确切数量的元素输入到数组中