Comment traiter les dépendances cycliques dans Node.js

J'ai travaillé avec nodejs ces derniers temps et encore se familiariser avec le système de module alors, toutes mes excuses si c'est une question évidente. Je veux le code à peu près comme suit ci-dessous:

un.js (le principal de l'exécution du fichier avec nœud)

var ClassB = require("./b");

var ClassA = function() {
    this.thing = new ClassB();
    this.property = 5;
}

var a = new ClassA();

module.exports = a;

b.js

var a = require("./a");

var ClassB = function() {
}

ClassB.prototype.doSomethingLater() {
    util.log(a.property);
}

module.exports = ClassB;

Mon problème semble être que je ne peux pas accéder à l'instance de ClassA à partir d'une instance de ClassB.

Est-il une bonne /meilleure façon de structure des modules de réaliser ce que je veux?
Est-il une meilleure façon de partager des variables entre les modules?

  • Je vous suggère de regarder dans une requête de commande de la séparation, de motif observable et puis ce que le CS gars gestionnaires d'appel - qui est en fait un wrapper pour le motif observable.
InformationsquelleAutor Runcible | 2012-06-03