We have a backbone.js application that needs to have a shared context model storing the environmental variables of the application, which can trigger events in multiple views. An easy way to do is to use the same model across multiple views, serving like a global object. But I have two issues with this design: first, it seems to be a bad design pattern using a global variable; second, it forces all views to use the same model, which created the undesirable strong coupling between views even though each view can be set to listen a subset of the model attributes.
One solution that I am considering is that a child view can have his own model with this shared context model as one of its attributes.
I am new to backbone.js, so I am wondering what other alternative solutions people are using.