Windows 런타임 오류 해결(HTML)

Applies to Windows and Windows Phone

JavaScript에서 Windows 런타임 비동기 메서드를 사용할 경우 비동기 메서드에서 발생한 오류를 디버그해야 할 수 있습니다. 경우에 따라서는 호출 스택의 깊은 곳에서 호출이 발생하여 비동기 메서드가 호출된 것을 알아차리지 못할 수도 있습니다.

디버그 모드에서 앱을 실행할 때 Windows 런타임 비동기 메서드에서 오류가 발생하면 JavaScript Error 개체에 두 가지 특별한 속성인 Error.asyncOpType Error.asyncOpSource가 포함됩니다. 이러한 속성을 사용하여 비동기 메서드의 이름과 코드에서 비동기 작업이 시작된 위치를 확인할 수 있습니다.

다음 코드는 클릭 이벤트의 이벤트 처리기 내에서 "지정한 파일을 찾을 수 없습니다."라는 오류를 일으킵니다.



<!-- WARNING: This code raises an error. -->
<div id="divId" >
    <button id="clicker">Click Me</button>
</div>
<script type="text/javascript">
    var clicker = document.getElementById("clicker");
    clicker.style.backgroundColor = "red";
    clicker.addEventListener("click", clickHandler);

    var clickDiv = document.getElementById("divId");

    function clickHandler(ev) {
        Windows.Storage.ApplicationData.current.localFolder.getItemAsync("notAFile").then(
            function (complete) {
                clickDiv.innerText = complete.name;
            },
            function (error) {
                clickDiv.innerText =  
                error.asyncOpSource.stack + " called " + error.asyncOpType;
        });
    }
</script>
        

이 코드를 실행할 경우 결과 DIV 텍스트는 "at clickHandler (ms-appx://<GUID>/default.html:<lineNumber>:<columnNumber>) called Windows.Foundation.IAsyncOperation`1<Windows.Storage.IStorageItem>"입니다.

특정 오류 속성에 대한 자세한 내용은 비동기 Windows 런타임 메서드의 특정 오류 속성을 참조하세요.

 

 

표시:
© 2015 Microsoft