2013-07-03 3 views
0

У меня есть одна переменная say var tree. Я хочу использовать эту переменную в двух файлах, скажем, a.js и b.js.Both файлы изменяют состояние дерева переменных. Я хочу получить доступ к этой переменной в других файлах с изменением состояния. Как это возможно?использовать общие переменные в backbone.js, используя require.js

+0

Возможный дубликат [Использование RequireJS, как пройти в глобальных объектах или одиночных сетях?] (Http://stackoverflow.com/questions/5608685/using-requirejs-how-do-i-pass-in -global-objects-or-singletons-around) – explunit

+0

Я хочу использовать это дерево переменных в двух разных режимах. Здесь a и b - ничего, кроме базовых представлений – NewBuddy

ответ

1

Есть более изящные способы сделать это, как описано в вопросе связаны в комментариях, но самый простой способ для определения модуля RequireJS с литерала объекта для удержания общего состояния:

define('sharedstuff', [], {tree: "original value"}); 

а затем из другого модуля вы можете требовать его:

require(['sharedstuff'], function(sharedstuff) { 
    sharedstuff.tree = "new value"; 
}; 

И если от еще одного модуля вы требуете его, RequireJS не перегрузить новую копию, но вместо этого даст вам уже загруженную версию с общим значением заселена:

require(['sharedstuff'], function(sharedstuff) { 
    console.log(sharedstuff.tree) // should be "new value" 
}; 
Смежные вопросы