React Native/React Native_error

[React Native - android] Maximum call stack size exceeded

bocoder
728x90
반응형

react-native 버전을 0.65.1  --> 0.69.7로 변경하면서 기존에 문제 없던 부분에서 아래 에러가 발생함.

 

테스트 폰의 error 메시지를 보면 @babel/core 부분과 관련해서 발생한 에러임을 확인함.

 

babel/core 관련된 라이브러리를 업데이트하여 해결할 수 있을 것 같았으나, 전혀 상관이 없었다.

최종 해결 방법은 맨 아래 참조

 

Maximum call stack size exceeded 에러가 발생한 파일에서 원인을 찾았다.
 

해당 파일의 라이브러리 중 @react-native-community/async-storage 을 사용하고 있었는데 지원이 종료되었고, @react-native-async-storage/async-storage 로 변경되었다. 해당 라이브러리를 설치 후 사용하고 있는 모든 파일을 수정해 주었다.

* reference : https://www.npmjs.com/package/@react-native-community/async-storage

 

yarn add @react-native-async-storage/async-storage

* reference : https://react-native-async-storage.github.io/async-storage/docs/install/

 

 

+++++++

 

이후에 다시 동일한 에러가 발생했고, react-native 버전을 업그레이드 하니 해결되었다.

// before
...
  "dependencies": {
    "react": "17.0.2",
    "react-native": "^0.68.5",
    "metro-react-native-babel-preset": "^0.67.0",
    "react-test-renderer": "17.0.2",
    ...
    

// after
...
  "dependencies": {
    "react": "18.0.0",
    "react-native": "^0.69.7",
    "metro-react-native-babel-preset": "^0.70.3",
    "react-test-renderer": "18.0.0",
    ...
// react-native 0.68.5
yarn add react@17.0.2 react-native@^0.68.5 metro-react-native-babel-preset@^0.67.0 react-test-renderer@17.0.2

// react-native 0.69.7
yarn add react@18.0.0 react-native@^0.69.7 metro-react-native-babel-preset@^0.70.3 react-test-renderer@18.0.0

 

+++++++

이후에 다시 동일한 에러가 발생했고, 결구 babel 관련 에러가 맞았다.

위의 모든 방법은 틀렸고, 아래 라이브러리를 최신 버전으로 업데이트 해주면 해결 된다.

npm install --save-dev @babel/core @babel/plugin-proposal-decorators @babel/runtime
...
  "dependencies": {
        "@babel/core": "^7.20.5",
        "@babel/plugin-proposal-decorators": "^7.20.5",
        "@babel/runtime": "^7.20.6",
...

 

728x90
반응형