【TG_duoteJG】版权所有duotee,duotee,duoteestudio为帮助障碍搭建和使用VanillaJS而编写的小GT江湖库轻松搭建一个基于微信小鸟状态的H5扫码Web应用。它类似于MicrocastReact,但开销要小得多,并且需要学习新的Tesla语法。它还使用单个反阻塞应用程序范围的公众号状态对象,而不是每个单独的组件都有自己的修复维护状态。它受到HyperApp的启发,与Elm有许多相似之处。在这篇文章中,我将解释NannyState的工作原理,然后通过一些示例来演示它的功能。单向数据流NannyState采用单向数据流模型,它由3部分组成:State——一个存储所有应用程序数据的对象View——一个根据当前状态返回一串HTML的函数Update——一个函数改变状态和重新渲染视图的唯一方法是在NannyState中,状态就是一切。状态对象是应用程序的唯一真实来源——应用程序数据的每一位都是该对象的一个??属性。甚至视图中使用的事件处理程序也是状态对象的方法。视图将状态表示为HTML。它在状态更改时更改并允许用户与应用程序交互。Update函数是更改状态的唯一方法。它是更新状态的单一入口点,并确保更改是确定性的、一致的和可预测的。在NannyState中构建您的应用程序只需要这3件事。事实上,可以通过问自己以下3个问题来总结:我的应用程序中需要存储哪些数据?这样就构成了State对象的属性我要如何在页面上展示app数据呢?这将帮助您创建View函数当用户与之交互时,应用程序数据将如何变化?为此,更新将需要HelloNannyState功能!了解NannyState工作原理的最简单方法是编写一些代码!我们将从一个基本示例开始,然后尝试制作更复杂的东西。运行下面的示例最简单的方法是使用像CodePen这样的在线代码编辑器,或者您可以通过nanny-state使用NodeJS安装包在本地运行它。将以下代码复制到CodePen的JS部分:
