2017-12-07 4 views
0

노드 v6.10.1을 사용하여 Visual Studio 2017에서 노드 응용 프로그램/게임을 개발 중입니다. ECMA 2015 프록시 개체를 사용하려고합니다. Proxy 생성이나 특정 프록시 호출 (예 : get()) 중에 중단 점이 설정되어 있지 않으면 프록시 객체가 예상대로 작동합니다. (1) 다른 사람이 경험 한 /이 문제를 해결하는 경우 I (2)이 노드/VS 이후 버전으로 발생하는 경우, 궁금 2017Visual Studio 2017의 Javascript 프록시 (노드)가 디버깅시 블로킹을 유발합니다.

샘플 코드 :

var realObject = { answer: 42, question: undefined }; 
// Setting breakpoint on following line will cause blocking on Node thread. 
    var proxy = (function (_this) { 
     var _proxy = new Proxy(_this, { 
      get: function(target, property, receiver) { 
       // Breakpoint on line below also causes blocking on Node thread 
       return _this[property]; 
      }, 
      has: function (target, prop) { 
       return prop in _this; 
      } 
     }); 
     return _proxy; 
    })(realObject); 

에 오류가 없습니다 중단 점을 취하면 코드가 예상대로 작동합니다. 그것은 쇼 스토퍼가 아니지만 성가신 일이며 문제 해결을 훨씬 어렵게 만듭니다. 도움이된다면 노드를 업그레이드 할 수 있지만 호환성을 보장하기 위해 이전 버전을 개발하려고합니다.

도움을 주시면 대단히 감사하겠습니다.

답변

0

결국 마침내 노드 8.9.3으로 업그레이드되었고 문제가 해결 된 것 같습니다. 나는 어떤 차단 문제없이 중단 점 및 이력서를 설정할 수 있습니다 : P

내가 비주얼 스튜디오가 함께 할 수있는 뭔가가있을 수 있습니다 나는 그 전에 통지를하지 않은 스위치의 부부와 함께 출시 것으로 나타났습니다 :

node --inspect --debug-brk 
관련 문제