티스토리 뷰

반응형

Babel을 통해 TSX파일을 빌드할 때 BABEL_TRANSFORM_ERROR 에러가 발생하는 경우가 있어 이를 해결하는데에 진땀을 뺐었는데 이에 대해 정리해본다.

BABEL_TRANSFORM_ERROR
BABEL_TRANSFORM_ERROR


결론부터 정리해보면, Javascript의 Prototype method인 Math.floor, Math.ceil, Math.log 함수를 사용할 때 BABEL_TRANSFORM_ERROR 에러가 발생했었다. 이 method들을 각각 아래와 같은 함수로 구현해주면 해결되었다.

/** Math Prototype 메소드 사용 시 Babel build error 이슈가 있어 custom 함수로 적용 */
const customCeil = (num) => {
    return num % 1 === 0 ? num : num + 1 - (num % 1);
}

/** Math Prototype 메소드 사용 시 Babel build error 이슈가 있어 custom 함수로 적용 */
const customLog2 = (x) => {
    let result = 0;
    while ((x >>= 1)) result++;
    return result;
}

/** Math Prototype 메소드 사용 시 Babel build error 이슈가 있어 custom 함수로 적용 */
const customPow = (base, exponent) => {
    let result = 1;
    for (let i = 0; i < exponent; i++) {
        result *= base;
    }
    return result;
}
반응형

'Javascript와 Typescript' 카테고리의 다른 글

any 타입 제거하기  (0) 2024.12.26
preventDefault vs. stoppropagation  (0) 2024.12.23
Array.prototype.slice의 참조값  (0) 2024.12.19
undefined와 null, 언제 사용해야 할까?  (0) 2024.12.17
Javascript 기본값 할당  (0) 2024.12.11
Total
Today
Yesterday
반응형