ES6 in iOS 12
iOS 12 에서 Promise.allSettled
가 동작하지 않아서 서비스 장애가 발생했다.
compatibility 를 확인하지 않았던 것이 문제다.
그렇다면 이것을 하나하나 Polyfill 해야 하나?
if (!('allSettled' in Promise)) {
// @ts-ignore
Promise['allSettled'] = function <T>(promises: Promise<T>[]) {
const mappedPromises = promises.map((p) => {
return p
.then((value) => {
return {
status: 'fulfilled',
value,
};
})
.catch((reason) => {
return {
status: 'rejected',
reason,
};
});
});
return Promise.all(mappedPromises);
};
}
이미 누군가 만들어 놓은 것이 있을 것이다!! 찾아보면... 꽤 있네..
그 중에 polyfill-advance으로 픽함.
index.tsx 에서 이 한 줄 넣어주면 끝난다.
import 'polyfill-advance';
세상 좋아졌네.
Author And Source
이 문제에 관하여(ES6 in iOS 12), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@iamchiwon/ES6-in-iOS-12저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)