如何使用不可变的 JavaScript 模拟状态
How to simulate state using immutable javascript
//REVISION 1
而不是构建命令行插件(它获得一个新的环境状态,因此函数本身不能保留状态@T.J. Crowder),假设我正在构建一个要在脚本中调用的简单函数。
简单的例子:(计数器插件)我希望插件每次运行时都递增一个。
即。
console.log(counter())
-> 1
console.log(counter())
-> 2
我假设答案与递归循环有关,但我不明白如何实现这一目标?
我最好的猜测是它看起来像这样:
export function counter(){
return counter
}
<小时 />//第一个版本
我正在使用不可变js构建一个命令行节点插件。
简单的例子:(计数器插件)我希望插件每次运行时都递增一个。
即。
$ node bin/counter
-> 1
$ node bin/counter
-> 2
我假设答案与递归循环有关,但我不明白如何实现这一目标?
我最好的猜测是它看起来像这样:
export function counter(){
return counter
}
我假设答案与递归循环有关......
不,这与递归无关。
你需要让"插件"将其状态存储在某个地方,因为每次它通过node
运行时,它都会得到一个全新的全局环境。
因此,例如,它可能会将该数据存储在文件中。
相关文章:
- 在VanillaJS中模拟模型双向数据绑定
- 事件和状态
- 获取选择框的状态
- 相位器状态未捕获参考错误
- 如何更改reactjs中外部/独立组件的状态或属性
- 使用jasmine模拟对服务器的调用
- 如何使用密码检测网络中的状态连接
- Ember.js-接口状态应该存储在哪里
- 模拟谷歌地图中的点击
- 混合 ui-sref 和 $state.go 在 Angular ui-router 中进行状态转换
- 在Angular 2中布线期间保持零部件处于活动状态
- 在mvc应用程序中,在回发时保留最初隐藏的文本框的隐藏或可见状态
- XMLHttpRequest未返回值-状态202
- 使用javascript反复检查用户在facebook上的登录状态
- 如何使bxslider仅在移动视图中处于活动状态
- 使用模拟按键在输入框中自动输入文本
- 如何模拟shift/ctrl/alt键状态
- 如何使用不可变的 JavaScript 模拟状态
- 与模拟无状态 React 组件帮助程序函数与 sinon、enyzme 和 ES6 导入的混淆
- 设计模块的最佳方式,使其状态易于模拟和测试