분류 전체보기
-
[React-Native][Error] npm ERR! code ERESOLVEReact-Native/Error 2022. 11. 17. 00:50
npm install Error 가끔씩 잘 되던 npm install이 갑자기 error가 발생하는 경우가 있었을 것이다. 원인 - dependencies 버전 문제 - node와 npm 버젼이 맞지 않는 경우 - npm 7 버전으로 인한 경우 (이전의 npm 버전에서는 peer dependencies가 있으면 경고는 뜨지만 설치는 되었으나, npm 7 버전은 설치가 안됨) 해결 방법 npm install --force OR npm install --legacy-peer-deps npm install [라이브러리] --force OR npm install [라이브러리] --legacy-peer-deps 차이 --force : package-lock.json에 몇 가지의 다른 의존 버전들을 추가 ( 에러를..
-
[React-Native][HotFix] Android apk errorReact-Native/Error 2022. 11. 16. 22:48
2022년 11월 09일에 빌드나 싱크 과정은 오류 없이 잘 되었으나, Android에서 apk를 추출하는 과정에서 에러가 발생했습니다. 새로운 라이브러리나 업데이트를 한적도 없는데 코틀린 버전에 관한 에러 문구가 뜨면서 apk가 추출이 되지 않았습니다. 그러나 위의 오류 때문에 apk가 추출이 안된 것이 아녔습니다. 원인 react-native의 버전의 오류 때문에 생긴 apk error 였습니다. https://github.com/facebook/react-native/issues/35210 [FIXED] Android build failures `No matching variant of com.facebook.react:react-native:0.71.0-rc.0 was found.` · Issue..
-
[React-Native][Android][Error] APK Error (Duplicate resources)React-Native/Error 2022. 11. 12. 10:57
Android Studio에서 APK를 추출하는 과정에서 발생한 에러입니다. 원인 - Android에서 리소스 파일 중복 오류 - 이름은 같으며, 확장자만 다른 파일들이 있을 경우에 발생 해결 방법 node_modules -> react-native -> react.gradle 파일에서 doFirst {} 밑에 아래의 코드 추가 doFirst { ... } doLast { def moveFunc = { resSuffix -> File originalDir = file("$buildDir/generated/res/react/release/drawable-${resSuffix}"); if (originalDir.exists()) { File destDir = file("$buildDir/../src/main..
-
[React-Native][Error] patch-package errorReact-Native/Error 2022. 11. 10. 00:03
환경 : webStorm, Mac OS Git에서 다른 팀원들이 저장해 놓은 Branch에서 필요한 라이브러리를 설치하기 위해 npm install을 했습니다. 그러나 라이브러리 설치 도중에 patch-package error가 발생했습니다. 원인 - patch-package 파일을 저장할 때와 clone 받은 OS의 환경이 다를 때 발생 - OS가 파일을 저장하는 과정에서 저장하는 방법이 다르기 때문. - ex) patch-package파일을 수정한 곳 ( 맥 OS ) -> patch-package을 clone 한 곳( window ) => error (반대 상황도 동일) - Mac OS일 경우 LF 형식으로 저장, window일 경우 CRLF로 저장 해결 방법 - patch-package로 생성된 파..
-
[React-Native] patch-package 셋팅 및 사용법React-Native 2022. 11. 7. 23:29
라이브러리의 자체적인 버그 또는 내가 원하는 기능이 없는 경우가 있었을 것이다. 그럴 경우 node_modules에서 해당 라이브러리 폴더에서 수정을 했을 것이다. 하지만 이렇게 수정하는 것은 로컬에서만 수정이 된 거라 git이나 다른 사람들이 clone을 받아서 사용하면 변경사항이 적용이 되지 않는다. 이러한 변경사항을 저장하고 적용시켜주는 라이브러리가 patch-package입니다. 1. patch-package 설치 yarn add patch-package postinstall-postinstall OR npm install patch-package 2. package.json 안에 patch-package를 넣어줌으로써, 모든 파일들이 npm으로 다운된 후 patch-package를 확인한다. /..
-
[React-Native][Android][Error] Android button not working errorReact-Native/Error 2022. 11. 7. 00:12
Error react-native로 앱을 개발하는 도중에 button을 만들었습니다. ios에서는 button의 onPress 기능이 동작을 잘했으나, android에서는 button의 기능이 동작하지 않는 오류가 발생했습니다. 그래서 log로 터치를 인식하는지를 확인했으나 터치 기능이 동작하지 않는 것을 확인했습니다. 해결 방안 기존의 button과 다르게 style에 { position: absolute }를 사용하고 있었습니다. stack overflow에서 button의 style에 이러한 옵션을 넣어서 사용하는 경우에 이러한 현상이 발생한다는 답변을 받았습니다. style에 { position: absolute }제거 하고, style을 설정하니 정상 동작하였습니다.
-
[React-Native][Error] /usr/local/lib/node_modules/react-native-cli/index.js:302 errorReact-Native/Error 2022. 10. 23. 20:18
react native 프로젝트를 새로 생성할 때 발생했던 오류입니다. 원인 react-native 0.69.0의 새로운 버전에서 생기는 오류였습니다. 해결방법 react-native 0.69.0이 아닌 다른 버전으로 프로젝트를 생성하시면 됩니다. npx react-native init projectName --version 0.68.2 위와 같은 방법으로 버전을 수정해서 실행시켜 줍니다. 참고 https://github.com/facebook/react-native/issues/34055#issuecomment-1164390603 TypeError: cli.init is not a function · Issue #34055 · facebook/react-native Description npx reac..
-
[JS] '==' 와 '===' 차이React-Native/javaScript 2022. 10. 14. 00:17
Equality (==) - 동등 연산자이다. - 느슨한 검사를 합니다. - 비교할 때 형 변환 (Type casting)이 발생하게 된다. (매우 위험한 이유) '1' == 1 // true 1 == true // true Stritct equality (===) - 엄격한 동등 연산자이다. - 비교할 때 형변환이 발생하지 않는다. '1' === 1 // false 1 === true // false 정리 더보기 JS에서 클린코드를 위해서 '==='를 적극 활용하는 것이 좋아 보입니다. 왜냐하면 팀원들과 협업하는 과정에서 명확한 의도를 전달할 수 있으며, '=='는 알수없는 오류가 발생할 수 있습니다. 안전하게 사용하는 방법으로는 먼저 형 변환을 하고, '==='를 통해 연산을 사용하는 것을 추천합니다..