当前位置: 首页 > 网络应用技术

[RECT]使用用户用户对Web Worker进行应用,擦除精美的火花

时间:2023-03-05 18:47:46 网络应用技术

  我正在参加“初夏创意贡献竞赛”以获取细节。请参阅:初夏创意贡献竞赛

  在这样的场景中,当加载网页时,它突然变得无法言喻,直到所有资源在响应之前都充满加载之前。或拖动元素。这次您可能会想到使用网络工人来帮助我们解决此问题。在本文中,我们将学习如何在React应用程序中使用Web Worker。UseworkerizedRedreducer。

  Web Worker是一个JavaScript脚本,在后台运行而不会干扰其他脚本的执行。

  由于JavaScript是单个线程语言,因此它不能同时运行多个脚本,这是运行大型计算脚本的问题。WebWorker帮助在背景中加载大量计算脚本而不会影响页面的性能。

  语法

  构造函数接受两个参数;第一个是,第二个类型可以是或。如果没有指定的类型,则默认类型为。

  在本文中,我们将使用该类型,因为它们只能在组件中使用。要在Web Worker组件中使用功能,我们必须添加到构造函数中。

  UserEducer是一个React Hook,用于存储和更新状态。它接受三个参数:作为最后一个参数,它是可选的:

  返回包含当前值的数组和您可以为执行功能提供操作的函数。

  该函数接受指定要执行的操作类型的对象。它基本上传递给该函数,并使用还原器函数来更新。

  还原器是一个当前接受两个参数和对象的函数。IT使用接收来确定更改并返回新的。

  以下代码演示了如何使用还原器函数更改:

  每当触发函数时,它都会返回新的作为函数内部的更改。

  它是一种对象类型,指示如何更改它。它必须具有属性。它可以在条件句子中使用以确定如何更改。

  为了允许函数在Web Worker中运行,我们必须使用它。

  与之相似,除了允许还原器执行工人外,我们还允许我们创建动态的React应用程序。

  允许在还原器中进行长时间计算,而不会影响应用程序响应。RuseWorkerizedRedreducer负责提供工人的功能。

  通过复制到主线程,UseWorkerizedRedreducer在工作线程和主线程之间提高了一个桥梁。REDUCER操作工人的状态对象,以保持复制主线程的当前状态。

  为了学习如何将reducer放置在Web Worker中,让我们创建一个简单的计数器程序,该程序将在当前状态更改时返回。

  首先,打开命令行并输入以下命令:

  成功安装应用程序后,我们需要将UseWorkerizedRedreducer用作程序的因项目。安装,在终端中执行以下命令:

  现在,我们已经成功安装了它,让我们创建一个文件。

  因为我们在worker.js文件中使用了reducer,所以我们将在src文件夹中创建一个worker.js文件:单击“创建新文件”,命名it worker.js,然后将其保存到src foldermiddle,如下所示:

  现在我们创建了worker.js文件,让我们添加以下还原代码:

  在上面的代码中,我们从使用工程的Redreducer介绍了它。

  接受两个参数:

  现在我们已经准备好了worker.js文件,我们需要从它导入它,这使我们可以从工作文件中调用还原器函数:

  UseWorkerizedReducer函数接受三个参数并返回一个值:

  处理数据是该函数执行到还原函数。

  忙碌将永远是真实的,直到工人的初始状态成功地复制到工人为止。在您仍在处理的情况下,忙碌将返回true,否则返回错误。

  还原器根据操作类型更改状态。在不明显的情况下,Action类型,减少和重置都会更新状态。

  初始状态是。当越来越多的操作类型是调度时,我们简单地设置了计数。

  在本文中,我们简要介绍了Web Worker和UserDucer,以及如何在React应用程序中构建和添加Web Worker文件。

  我们还讨论了UseWorkerizedRedreducer,这将用户的函数带到了Web Worker。在本文中,我们介绍了在Web Worker中使用useworkerizedredredrededucer在Web Worker中使用REDUCER。

  原始:https://juejin.cn/post/7100016815891283976