2015-02-07 5 views
0

가끔 노드에서이 문제가 발생하여 근본적인 원인을 정확히 이해하지 않고 해결할 수 있습니다. 여기에 무슨 일이 일어나는가 :Node.js의 손상된 모듈

나는 내 코드의 여러 위치에 모듈을 필요로 처음 몇 가지 잘 작동하는 경향이 있습니다. 어떻게 든 뭔가가 빈 객체를 반환하는 모듈을 손상시킵니다.

var m1 = require('./m1'); // returns just fine 
.... /// somewhere latter in the code 
var m1 = require('./m1'); // returns empty object 

그래서, 내 질문은 어떻게 됐을까 것 부패 모듈과 당신이 일어날 때 그것을 잡으려고 어설 션 디버거의 일종을 넣을 수있는 방법?

감사합니다.

+0

'm1' 모듈이 엑스포트로 반환하는 것은 무엇입니까? 모듈이 문제가되는 전역을 사용할 수도 있습니다. – jfriend00

+0

때때로 새 Object() 및 때로는 원래 객체의 프로토 타입. 그것은 아무것도를 위해 세계를 사용하지 않습니다. 한 시점에서 개체가 싱글 톤이라고 생각했지만 현재 처리중인 인스턴스는 module.exports = new MyClass();로 끝납니다. –

+0

참고 : 다른 모든 요구 사항이있을 경우 module.children []에도 표시되지 않습니다. http://nodejs.org/api/modules.html#modules_module_loaded –

답변

0

이 문제점을 발견했습니다. 추적의 긴 길이 이후에 (적어도이 경우에는) 순환 참조 문제로 보입니다.

오류가 발생하기를 기대 했겠지만 분명히 그렇지 않습니다. 도와 주셔서 감사합니다.