在多个jquery小部件之间共享状态

时间:2016-09-02 05:56:17

标签: javascript jquery jquery-ui

我正在开发一个jQuery应用程序。此应用程序是多个jQuery UI Widgets的组合。基本上我想与多个小部件共享一个对象对象 单一主要来源 ,或者您可以说对象是小部件的状态。像angularjs中的服务之类的东西。

每个小部件都将与对象进行交互,以添加一些数据或删除一些数据。完成交互后,可以将对象保存在DB或本地存储中。

以下是我的应用结构的简单版本

src
 - app.state.js
 - widgetA.js
 - widgetB.js

在app.state.js中,我已经在" $"中声明了我的对象。

示例:

$.ab.state = 
{
  title: "",
  description: "",
  items: [],
  score: 0
}

现在可以在widget的js文件中直接访问此对象。我觉得这不应该是这样的。应该有一个接口。

问题是widgetA可能会意外地改变状态中的属性,这是不应该做的。

  

widgetA应该更新状态中的以下信息   object" title"," description"。

     

widgetB应该更新"项目" &安培; "得分"中的属性   国家对象。

是否有适合此类应用程序建模的良好设计模式?或者请推荐最佳做法。

0 个答案:

没有答案