새 프로젝트에 browserify를 사용하고 있습니다. 지금까지 정말 잘 작동합니다.
그래도 큰 문제가 하나 있습니다. 어떻게 각 js 파일을 개별적으로 디버깅 할 수 있습니까? 모든 파일을 함께 묶고 오류가 발생하면 묶음을 가리 킵니다.
크롬 및 소스 맵을 사용하고 있지만 실제로 디버깅에 도움이되지 않습니다.
어떤 아이디어?
업데이트 : 추가 정보 :
package.json에서이 명령을 사용하고 있습니다.
"start": "watchify scripts/main.js -o scripts/bundle.js --debug",
위에 표시된 것과 같이 이상적이지 않은 오류가 발생합니다.
내 소스 맵이 켜져 있다고 생각합니까?
코드없이 브라우저 화를 위해 명령 줄 도구를 사용하는 방법을 정확히 모르겠지만 debug
.
--debug -d 파일을 개별적으로 디버깅 할 수있는 소스 맵을 활성화합니다.
browserify main.js -o bundle.js --debug
CLI 도구에 대한 자세한 내용은 https://github.com/substack/node-browserify#usage 에서 확인할 수 있습니다.
편집 이것에 대해 좀 더 자세히 ParseError
살펴본 후 - 특히 여기에서 발생한 문제 는-Browserify가 실제로 적절한 디버그 단계에 도달하지 않음을 의미합니다. 실제로 생각하지 못했지만 이것은 완벽하게 이해되었습니다.
이를 테스트하기 위해 두 개의 간단한 파일을 만듭니다.
a.js
module.exports = function(a) {
return a;
}
main.js
var a = require('./a.js');
console.log(a("something"));
나는 다음 실행 browserify
하여 watchify
와 npm
스크립트
"start": "watchify main.js -o bundle.js --debug"
브라우저에서 스크립트를 사용하면 모든 것이 잘 작동했습니다. 예상대로 콘솔에 기록되었습니다. 그런 다음 a.js
오타 로 편집 했습니다.
a.js
module.exports = function(a) {
return a---
}
브라우저 및 watchify 오류 줬어요는 위에 표시된 : path/to/file/a.js:3 ParseError: Unexpected Token
.
Browserify는 파일을 제대로 컴파일 할 수 없으므로 오류가 발생합니다. 빌드하는 동안 콘솔에 표시되어야합니다.
--debug
플래그가 예상대로 작동하는지 테스트하기 위해 코드를 다시 수정했습니다.
a.js
module.exports = function(a) {
return a('something');
}
여기서 기대하는 TypeError
것은 함수가 이제 함수일 것으로 예상 a
하기 때문입니다.
이제 브라우저의 콘솔에 다음이 표시됩니다. Uncaught TypeError: a is not a function __________ a.js:2
구문 분석 문제를 수정 browserify --debug
하면 다시 한 번 예상대로 작동하기 시작합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다