class Test1 {
constructor({ onSearch }) {
this.onSearch = onSearch
document.addEventListener("click", this.onSearch)
}
}
class Test2 {
constructor({ onSearch }) {
this.onSearch = onSearch
document.addEventListener("click", this.onSearch)
}
}
class App {
constructor() {
this.init()
}
init() {
this.Test1 = new Test1({
onSearch: () => {
throw "error" // 여기에서 던진 에러를 1
}
})
this.Test2 = new Test2({
onSearch: () => {
throw "error" // 여기에서 던진 에러를 2
}
})
}
}
try {
const app = new App()
} catch(e) {
alert(e) // 이곳에서 잡을 방법은 없을까요?
}
에러핸들링하다가 궁금한게 있어서 질문드립니다! 각각의 클래스가 App.js
에 존재하고 클래스의 비동기 코드에서 에러가 발생할 경우 최상위 try ~ catch 구문에 전파를 하여 에러를 핸들링하고 싶습니다. 이렇게 한다면 한 곳에서 에러 관리를 할 수 있어서 편할거 같아 시도중인데 도저히 방법을 잘 모르겠네요… 불가능한걸까요?