2014-11-14 2 views
0

JavaScript를 사용하여 Windows 8 기본 응용 프로그램을 빌드하려고합니다. 우리는 jQuery를 사용하여 javascript 파일을 동적으로로드하고 모든 javascript 파일은 응용 프로그램 내부에 저장됩니다. 자바 스크립트 디버깅을 시도 할 때 중단 점은 "중단 점은 현재 적중하지 않습니다 ...."라고 말하지만 솔루션 탐색기에는 스크립트 문서 프로젝트가 있습니다. "script 블록 "은 jQuery에서로드 된 모든 자바 스크립트를 포함합니다. "Enable Just My Code"를 비활성화 한 후에 거기에서 디버깅 할 수 있지만이 파일은 거대한 크기이기 때문에 중단 점을 넣을 정확한 위치를 찾기가 어렵습니다.Visual Studio 2013에서 javascript를 디버깅하는 방법

실제로 모든 javascript 파일에는 sourcemap 속성, 예 : // # sourceURL = ms-appx : //d664ef20-6ac8-11e4-ab78-2f4dc8b50d53/www/resources/abc.js

IE, Safari, Firefox 및 모든 브라우저에서 정상적으로 작동합니다. 크롬. 그러나 Visual Studio는이를 인식하지 못합니다.

동일한 문제가있는 사람은 누구입니까?

안부, 샤오 쥔

+0

jQuery를 통해 JavaScript를 어떻게로드합니까? 정상적으로 스크립트 파일로 포함 시키면 예상대로 작동합니까? –

+0

아니요, 로컬 디스크에 있더라도 ajax 호출을 통해로드 된 다음 window.eval을 사용하여 실행합니다. – Xiaojun

+0

"디버거;" 일반적으로 중단 점을 설정할 키워드는 키워드에 도달하면 실행이 일시 중지됩니까? –

답변

0

난 당신이 스크립트 문서에서 "평가 코드"파일에 추가 할 문자열을 일으키는 원인이 문자열로 내용을 evals하는이, 일을 기대합니다. 참고로, 중단 점을 설정할 수 있습니다. "eval code"문서에서 중단 점을 지정하기 만하면됩니다.

// eval via AJAX -- adds to the "eval code" document 
$.ajax("./js/fileToAdd.js").done(function (data) { 
    window.eval(data); 
}); 

당신은 스크립트 태그를 통해 파일을로드하면

는 스크립트 파일은 별도로로드되고 중단 점은 내용이 파일이 아닌 문자열로 연결되어 있기 때문에 예상대로 바인딩합니다. 방법은 다음과 같습니다.

// Add <script> tag to head -- Causes script file to be loaded/displayed individually 
var scriptTag = document.createElement("script"); 
scriptTag.src = "./js/fileToAdd.js" 
document.head.appendChild(scriptTag); 
+0

안녕하세요 아담, 도움을 제공해 주셔서 감사합니다. 스크립트를 사용하여 파일을로드하면 스크립트가 즉시 실행되지 않습니다.

abc

Xiaojun

+0

이렇게하면 코드 블록이 실행될 때마다로드가 지연됩니다. 두 번째 코드 블록을 함수 (아마도 파일 이름 매개 변수가있는)에 넣은 다음 코드를로드하려고 할 때이 코드 블록을 호출 할 수 있습니다. –

+0

나는이 방법으로 쓰여진 js 파일의 엄청난 양을 가지고 있기 때문에 이것을 바꿀 수는 없다는 것을 안다. – Xiaojun

관련 문제