.그 다음에()
기술 부채에 대해 이야기하고 싶습니까? 내 목록은 1마일 길이지만 바닥 근처 어딘가(바닥에 묻힌 것처럼)에는 다음과 같은 비동기 함수 및 도구/주제가 있습니다.
HR에서는 일이 빠르게 진행되고 순수한 연구나 검토를 위한 시간을 따로 두기 어렵습니다. 예를 들어, 약속에 대한 나의 이해는 최소한의 것 이상으로 발전하지 않았습니다. 내 말은 실제 최소값을 의미합니다. 내가 원하는 것을 얻기 위해 근처에 코드를 던질 수 있습니까?
요전에 헬프 데스크에서 문제를 디버깅하고 있었습니다. 양식 제출 후 내 페이지를 리디렉션하는 데 어려움을 겪고 있었고(문제는 이벤트 처리기에서 preventDefault()를 사용하지 않았기 때문에 발생했습니다.) 우리는 이 문제를 해결하기 위해 노력하고 있었습니다. 그 경로를 따라 어딘가에서 내 대담자는 우리가 조사하고 있던 일부 코드에서 안티 패턴을 지적하기 위해 잠시 멈췄습니다. 코드는 기능적이었지만 결함이 있었습니다.
다음과 같은 도우미 기능을 사용하여 http 요청을 했습니다.
const helper = (some_param, callback) => {
axios.post('http://url.com')
.then(res => callback(null, res.data))
.catch(err=> callback(err, null))
}
그렇군요.
나는 왜 이런 기능을 구축했을까? 일단 효과가 있었습니다. 그리고 그것이 정말로 전체 목록입니다.
처음으로 비동기를 시작했을 때 jQuery의 .ajax 도구를 사용하여 http 요청을 하고 있었고 해당 컨텍스트에서 콜백을 사용하는 것이 점점 편해졌습니다.
얼마 지나지 않아 - 내 말은, 만약 그렇다면 - 약속이 혼합에 들어갔다는 것을 의미합니다. .ajax보다 .axios를 선호하는 팀에 합류하기 전에는 그들과 함께 세미 딥 스터디를 한 적이 없었습니다. .axios는 prmoises를 반환하고, 나는 그들을 처음 접하는 친구에게 내가 ajax 호출을 axios로 변환하는 데 직면한 문제를 어떻게 처리할 것인지 물었습니다. 그는 위의 코드에서 내가 시연한 모델을 제안했습니다. 그리고 효과가 있었습니다. 그래서 그때부터 사용하고 있었습니다.
긴 이야기로 만들겠습니다.
다음은 헬프 데스크 도우미가 나에게 시킨 일이며 그 이후로 매우 쉽게 사용하고 있습니다.
const helper = (some_param) => {
return axios.post('http://url.com')
}
그런 다음 도우미를 호출하는 함수에서 다음을 수행합니다.
reactEventHandler(param) => {
helper(param)
.this(res => setStatePerhaps(res.data)
.catch(err=> callback(err, null))
}
이것은 정말로 표면 수준의 물건입니다. 그러나 나는 그것을 작은 승리라고 부를 것입니다. 그리고 승리는 승리입니다.
Reference
이 문제에 관하여(.그 다음에()), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/zbretz/then-514d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)