2013-04-28 3 views
0

Мое приложение имеет модель View(), которая извлекает HTML, CSS и т. Д. С помощью простого вызова пути представления. Поскольку многие из этих представлений и представлений являются совместными или требуемыми несколько раз, я хотел бы сохранить объект «кеш» загруженных представлений, который любой новый экземпляр View() может проверять и считывать, если этот конкретный вид был загружен.Глобальные переменные «кэша» в приложении requireJS AMD

В реализации requireJS любые идеи о том, где лучше всего поставить этот объект «кэш» этого вида? В идеале я хотел бы иметь что-то вроде объекта Session(), который содержит его, и я мог бы ссылаться на один экземпляр Session() из любого места в моем приложении.

Любые мысли о лучших практиках для этого?

Большое спасибо!

ответ

0

Предлагаю вам использовать подход Singleton, создающий простой модуль для этого случая. Например, вы можете создать модуль, как это:

define(["mydep","myotherdep"], function(dep1,dep2){ 
    var Hellovariable = { 
     "attr1": ..., 
     "attr2": ..., 
    ... 
     "attrN": ... 
    } 
    return Hellovariable; 
}); 

При вызове этого модуля с помощью AMD вы будете иметь только уникальный экземпляр этих переменный и ее атрибуты.

Смежные вопросы