什么是jQuery中的状态管理?

时间:2015-04-04 12:01:30

标签: javascript jquery jquery-ui browser-history html5-history

jQuery UI Widget Factory中:

  

jQuery UI Widget Factory是一个可扩展的基础   构建了jQuery UI的小部件。使用小部件工厂构建一个   插件为状态管理提供便利,以及   常见任务的约定,如暴露插件方法和更改   实例化后的选项。

有人可以用简单的词语解释(最好用一个例子),在这种情况下,国家管理意味着什么?我知道的状态管理是浏览器历史记录state management(可能使用HTML5 History API或history.js)但我没有看到它与jQuery UI Widget Factory目的之间的任何关系。

感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

来自"Why Use the Widget Factory?"部分的文件:

  

无状态与有状态插件

     

大多数jQuery插件都是无状态的;他们执行一些行动,他们的工作已经完成。例如,如果使用.text( "hello" )设置元素的文本,则没有设置阶段,结果始终相同。对于这些类型的插件,只需扩展jQuery的原型就可以了。

     

但是,有些插件是有状态的;他们拥有完整的生命周期,维持状态,并对变化作出反应。这些插件需要大量专用于初始化和状态管理(有时还有破坏)的代码。这导致了很多用于构建有状态插件的样板。更糟糕的是,每个插件作者可能会以不同的方式管理生命周期和状态,从而为不同的插件生成不同的API样式。小部件工厂旨在解决这两个问题,删除样板并在插件之间创建一致的API。