📜  Unstated Next – ReactJS 的轻量级状态管理库 |第1部分

📅  最后修改于: 2022-05-13 01:56:18.211000             🧑  作者: Mango

Unstated Next – ReactJS 的轻量级状态管理库 |第1部分

你可能使用过许多 ReactJ 的状态管理库,比如 Redux、Recoil MobX,甚至是 Unstated,但你有没有想过只用 300 字节的代码就可以管理整个应用程序的状态。它可以通过使用 Unstated-next 状态管理库来实现。

什么是未说明的下一个?

它是一个构建在 Reacts Context API 之上的轻量级状态管理库,我们可以使用它来管理全局状态反应应用程序。随着应用程序的增长,我们添加了许多组件,而管理这些组件并在组件之间共享状态成为 ReactJS 中一项非常繁琐的任务。为了解决这个问题,很多开源社区都开发了状态管理库。状态管理库的功能各不相同。因此,很难选择其中之一。在本文中,我们将解释 Unstated-next 与其他状态管理库的不同之处,它是如何工作的,以及如何将它集成到您的应用程序中。

与其他状态管理库相比,Unstated Next 的优势是什么?

通过查看上图,我们可以清楚地表明与其他库相比,Unstated Next 的大小更小。而且使用起来也非常简单,只需要写10行代码就可以直接控制应用的全局状态。此外,它可以用于复杂的应用程序(将在进一步的教程中解释)。它的每周下载量超过 50k。

关键点:

  • 小束大小。
  • 易于实施。
  • 浅(快速)学习曲线。
  • 也可用于复杂的应用。

未说明的 Next API 方法

1. createContainer(custom hooks)使用这个方法我们创建了一个容器,它会返回给我们Provider和useContainer方法。例如,如果您正在为用户创建商店,则使用应该创建:

// return { Provider, useContainer }
let userContainer = createContainer(userHook);
  • Provider:它是一个反应组件,充当应用程序的提供者。
  • useContainer:使用它我们可以访问用户的字段和方法。

2. Provider:它是一个React组件,允许子组件访问应用程序的全局存储。

return (
   
       
        ...
       
   
);

3. useContainer:是一个react hook,以CustomContainer为输入,返回其字段和方法。

let { name, onSubmit } = useContainer(userContainer);
return (

Name : {name}

);

创建反应应用程序:

第 1 步:使用以下命令创建一个新的 react 应用程序。

npx create-react-app example

步骤 2: cd 进入项目目录。

cd example

第三步:安装包。

npm i unstated-next

第 4 步:使用以下命令运行您的应用程序。

npm start

项目结构:在此之后,您的文件夹结构如下所示:

示例:此示例将创建一个类似帖子的计数器。

应用程序.js