>

HTML5 input type file 를 사용하여 파일을 업로드하는 모듈을 만듭니다.  요소. 적절한 오류 메시지를 표시하여 해결/해결해야하는 문제를 발견했습니다 :-

1) 사용자가 업로드 할 파일을 선택하지만 업로드 버튼을 누르기 전에 사용자가 소스 파일을 삭제했습니다. 이제 사용자는 업로드 버튼을 클릭합니다. 제 경우에는 UI에서 아무 일도 일어나지 않습니다.

HTML5의 입력 유형 파일 요소에서 업로드 버튼을 클릭하기 전에 날씨 파일이 여전히 존재하는지 알 수 있기를 바랍니다.

Pls 참고 : ember.js를 사용하고 있습니다

  • 답변 # 1

    코드를 실행하고 오류를 잘 처리 할 수있는 'try-catch'접근 방식을 사용할 수 있습니다.

    try{
     //the code you want to test / run goes here
    }catch(e){
     //here is where you handle the error thrown (if any)
     console.log("There was an error!\nError message: " + e.message);
     alert("There was an error!\nError message: " + e.message);
     document.getElementById('errorMessageSpan').innerHTML = "There was an error!\nError message: " + e.message + "";
    }
    
    

    여기서 애플리케이션이 크 래핑되기 전에 오류를 잡아 사용자 나 개발자 (DOM 또는 콘솔)에게 오류를 표시 할 수 있습니다.

    이것이 도움이되기를 바랍니다!

  • 답변 # 2

    파일을 업로드하는 방법 (Form, XMLHttpRequest, 3rdParty lib)을 모르지만 Element, form, XHR 요소 또는 이벤트 창 요소 자체

    요소에 오류 처리기를 연결 한 경우 사용자가 파일을 읽을 때가 아니라 파일을 읽을 때 (XHR, FORM send 등) 오류가 바로 발생하므로 유스 케이스를 처리 할 수 ​​없습니다. 파일.

    또 다른 옵션은 브라우저가 다음을 사용하여 "즉석에서"파일을 읽도록하는이 오류를 방지하는 것입니다.

    window.URL.createObjectURL(files[i]); 
    
    

    파일이 너무 크면 웹 워커를 사용하거나 파일을로드하기 전에 파일 크기를 확인해야하므로 UI가 고정되지 않습니다.

관련 자료

  • 이전 javascript - 이 유형의 JS 코드를 단락시키는 방법
  • 다음 C #에서 JSON을 직렬화 해제하고 특정 속성 값을 검색하는 방법