【问题标题】:share a dojo/store between different widgets在不同的小部件之间共享一个道场/商店
【发布时间】:2016-03-08 17:58:34
【问题描述】:

是否存在在多个小部件之间共享单个 dojo/store 的模式?

我在同一个页面上有多个使用同一个 dojo/store 的小部件,我不想复制它,所以我不需要进行两次相同的 REST 调用。

【问题讨论】:

  • 您是否尝试过将 store 设为全局并作为参数传递给不同的小部件?

标签: dojo store


【解决方案1】:

考虑创建一个单独的模块,用于存储 dojo/store 的状态和操作。 该模块将包含一个您的小部件可以访问的“API”。

下面是一个使用单音模式的非常简单的例子

define([], function () {
   'use strict';

    var _instance;
    function _StoreManager() {
    }
    _StoreManager.prototype = {
        _privateMember: null,
        getDataFromApi: function () { 
            //...
        },
        saveDataToApi: function (data) {
            //...
        },
    };
    return function _getSingleton() {
        // summary:
        //      Gets singleton object.
        return (_instance = (_instance || new _StoreManager()));
    };
});

需要模块并使用它。

require(['_StoreManager'],function(_StoreManager){
   _StoreManager.saveDataToApi({});
});

【讨论】:

    猜你喜欢
    • 2012-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-29
    • 1970-01-01
    相关资源
    最近更新 更多