Promise 체인에서 Promise의 해결은 해당 오류 핸들러 기능이 거부에 어떻게 응답하는지에 따라 달라집니다. .then() 메서드는 콜백 함수의 결과에 대한 새로운 약속을 반환합니다. 성공 또는 오류 핸들러가 제공되지 않으면 결과는 다음 Promise로 직접 전달됩니다.
오류가 처리되면 결과 Promise는 오류 핸들러에서 반환된 값으로 이행됩니다. 오류를 다시 발생시키고 이를 체인으로 전파하려면 대신 err을 발생시키십시오.
위젯 상점 예에서 체인의 Promise가 오류를 수신하면 후속 Promise가 오류를 수신하도록 해야 합니다. 체인은 성공 값을 받지 못합니다.
데이터베이스 쿼리 체인에서 첫 번째 쿼리에서 오류가 발생하는 경우 오류 핸들러를 생략하면 후속 Promise가 발생하더라도 체인이 계속되도록 허용됩니다. 의미 있는 값을 받지 못할 수도 있습니다.
db.query({ parent_id: value }).then(function(query_result) { return db.put({ parent_id: query_result[0].parent_id }); }).then(function(first_value_result) { return db.put({ reference_to_first_value_id: first_value_result.id }); }.then(values_successfully_entered);
요약하자면, 거부가 발생한 후 체인의 후속 Promise가 성공 값을 받지 못하게 하려면 오류 처리기 함수가 오류를 발생시키거나 거부된 Promise를 반환해야 합니다.
위 내용은 연결된 약속은 거부를 어떻게 처리하고 전파합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!