2014-09-18 2 views
1

가끔 엠버 응용 프로그램이 충돌합니다. 이전 단계에서 뭔가를하면 정상적으로 패턴을 보지 못했지만 콘솔에 오류가 기록되지 않았습니다.Ember.js가 때때로 오류를 표시하지 않음

렌더링 된 앱의 어딘가에서 중단 점을 TRY_CATCH_ERROR.error = e;으로 설정하면 오류가 표시 될 수 있지만 간단하게 추측 할 수 있습니다.

답변

4

모든 오류 : 약속에 대한

Ember.onerror = function(error) { 
    console.log(error) 
} 

Implement an Ember.onerror hook to log all errors in production


:

Ember.RSVP.on('error', function(error) { 
    Ember.Logger.assert(false, error); 
}); 

Errors within an RSVP.Promise


실행 루프 스택은 나는 또한 오류 로깅을 삼켜 응용 프로그램을 가지고

Ember.run.backburner.DEBUG = true; 

Errors within Ember.run.later (Backburner.js)

+7

ember-cli 앱에 해당 코드를 삽입하는 가장 좋은 장소는 어디입니까? 환경 설정의 일부로? – shredding

1

추적; 심지어 @ Kingpin2k에 의해 설명 된 Ember.onerror 함수를 추가해도 도움이되지 않았습니다.

디버깅 후 문제가 발견되었습니다. 404가 발생 된 경우 나 일부 사용자 지정 물건을 내 응용 프로그램 경로에 error event을 사용 :

export default Ember.Route.extend({ 
    actions: { 
     error(e) { 
      if (Ember.isArray(adapterError.errors) && adapterError.errors[0].status === '404') { 
       //do stuff 
      } 
     } 
    } 
}); 

나는 위의 진술이 사실이 아닌 경우 return true를 추가하는 것을 잊었다. bubble-event-chain이 손상 되었기 때문에 이러한 일을 잊어 버리면 오류 로깅이 제거됩니다.

관련 문제