"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 비동기 작업을 유지하면서 연결된 함수에서 jQuery 약속을 피하는 방법은 무엇입니까?

비동기 작업을 유지하면서 연결된 함수에서 jQuery 약속을 피하는 방법은 무엇입니까?

2024-11-06에 게시됨
검색:725

How to Avoid jQuery Promises in Chained Functions While Maintaining Async Operations?

연결된 함수에서 jQuery 약속 회피

jQuery 약속을 피하라는 권장 사항에도 불구하고 개발자는 jQuery를 사용하지 않고 비동기 jQuery 함수를 연결할 때 문제에 직면할 수 있습니다. .then() 또는 .when()과 같은 처리 메커니즘을 약속합니다. 이 문제를 해결하려면 다음 접근 방식을 고려하세요.

jQuery Promise는 JavaScript Promise와 상호 운용 가능합니다. 이는 문제 없이 코드에서 이들을 혼합하고 일치시킬 수 있음을 의미합니다. 평판이 좋은 모든 라이브러리와 기본 약속은 모든 구현에서 thenable을 허용합니다. 결과적으로 대부분의 경우 모든 Promise가 동일한 구현을 사용하는 것처럼 코딩할 수 있습니다.

그러나 모든 .then() 호출이 선호하는 구현을 사용하는지 확인해야 하거나 비-구현을 구현해야 하는 경우 표준 기능을 사용하려면 메서드를 직접 호출하는 모든 Promise를 명시적으로 캐스팅하는 것이 중요합니다. 예를 들면:

Promise.all([$.ajax(...), $.ajax(...)]) // Just works (native `then`)
$.ajax(...) // jQuery promise
Promise.resolve($.ajax(...)) // Explicit cast
.then(function(data) { // Native `then`
  return $.ajax(...); // Just works
})
.catch(...) // Use features of native promise

jQuery와 JavaScript Promise를 혼합하는 것은 일반적으로 문제가 되지 않지만 구현에 대한 명시적인 제어가 필요한 경우 명시적 형변환 접근 방식을 사용하십시오.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3