2014-03-25 4 views
7

node-inspector을 사용하여 노드 앱을 디버깅하는 것은 JavaScript 또는 컴파일 된 커피 (coffee -c -m script.coffee)를 사용하여 스크립팅하는 경우 매우 간단합니다. 그러나노드 검사기를 .coffee 처리기와 함께 사용할 수 있습니까?

의 커피 스크립트 require 핸들러 사용 : 나는 node-debug를 사용하여 디버깅하기 위해 노력하고있어 스크립트에서

require('coffee-script/register'); 
require('lib/component.coffee'); 

를, 내가 얻을 :

(function (exports, require, module, __filename, __dirname) { # 
                 ^
SyntaxError: Unexpected token ILLEGAL 
    at Module._compile (module.js:439:25) 
    at Object.Module._extensions..js (module.js:474:10) 
    at Module.load (module.js:356:32) 
    at Function.Module._load (module.js:312:12) 
    at Module.require (module.js:364:17) 
    at require (module.js:380:17) 
    ... 

을 내가 파일을 require 권리로.

내가 할 수있는 일이 가능합니까? 나는 오히려 이 아닌 CoffeeScript 파일을 여러 개 가지고 있는데, 내가 테스트하고 싶을 때마다 컴파일해야한다..

답변

10

예. 나는 모든 시간을 사용, 명령 줄은 다음과 같습니다

node-inspector & coffee --nodejs --debug-brk ./scripts/mongoEtl.coffee 

node-inspector & mocha --compilers coffee:coffee-script ./test/dataLayer-test.coffee --ui bdd --debug-brk 

node-inspector --web-port=5870 & mocha --compilers coffee:coffee-script/register ./test/dataLayer-test.coffee --ui bdd --debug-brk=5880 -g 'my test name here' 

나는 그냥 일하고, 마지막 줄을 확인하고 커피 스크립트가 거기에 필요가 있습니다. 그러나 내가 디버깅 할 때 나는 실제로 자바 스크립트가 아니라 커피를보고있다. 노드 검사기로 coffeescript를 실행하고 디버깅 할 수 있는지 여부는 알 수 없습니다 (편집 : 예, 소스 맵 사용은 필수이지만이 답변의 범위를 벗어납니다). 나는 그것이 가치 있다는 것을 확신하지 못한다. 나는 자바 스크립트를 잘 읽는 것이 좋다고 생각한다. 그래서 나는 그것에 대해 조사하지 않았다.

문제점이 컴파일되었을 것으로 생각됩니다. 필요한 파일을 컴파일 해 보셨습니까?

+2

매력처럼 작동했습니다. 고맙습니다! – Qix

+0

왜이 경우 모카를 사용하는 이유는 모르겠습니까? 테스트 프로젝트가 아닌 프로덕션 프로젝트를 디버그하고 싶습니다. :) –