Cute Bow Tie Hearts Blinking Pink Pointer

전체 글 106

[Recoil] Recoil로 리액트 네이티브 컴포넌트 강제로 새로고침하기

목차 - recoil을 쓰게 된 이유, 장점 및 단점 -리액트 네이티브 RefreshControl + recoil selector 로 api 재호출하기 recoil을 쓰게 된 이유, 장점 및 단점 기존 프로젝트에서는 놀랍게도 state를 전역으로 관리하지 않았다(놀라움..) 따라서 개발 과정이 매우 번거로웠고, 매 페이지마다 회원 정보를 불러오는 api를 호출해야하는 치명적인 단점이 존재했다. 보다 효율 높은 유지보수를 위해 recoil을 사용하여 전역관리를 하기로 어렵게 결정하였다...! (사용법이 쉽고 요새 많이 쓰는 추세라서..) 무려 70개가 넘는 screen을 다 바꿔야했지만... 미래를 생각해서 진행하기로 했다. recoil selector를 사용했더니 loading 상태를 별도로 관리하지 않..

[nodejs] Error: Requires Babel "^7.0.0-0", but was loaded with "6.26.3". If you are sure you have a compatible version of @babel/core 에러 해결하기

레파지토리에서 clone받아온 파일의 모듈을 깔고, 실행을 해야하는데 npm install 부터 실패했다....... 뭔 짓을 해도 아래의 에러가 계속해서 발생하였다. 미치는 줄 알았다. Error: Requires Babel "^7.0.0-0", but was loaded with "6.26.3". If you are sure you have a compatible version of @babel/core babel도 지워보고 모듈을 깔았다 지웠다 반복했음에도 해결되지 않았다 --; 별의 별 짓을 다 해보면서 해결하게 됐는데, 안됐던 이유는 package.json에 다운로드한 모듈의 이름은 @babel/cli인데 열심히 npm uninstall babel-cli 를 하고 있었따 ^^; 본인이 설치한 라..

에러 해결 2022.11.29

[Ubuntu]Ruby: You don't have write permissions for the /var/lib/gems/2.7.0 directory 에러

깃허브 io를 위한 bundler jekyll 를 다운로드 해야했다. 그러려면 ruby언어의 명령어 gem이 필요한데 뭐가 잘 못 된건지 ruby가 설치가 됐는데도 gem을 실행하면 Ruby: You don't have write permissions for the /var/lib/gems/2.7.0 directory 에러가 발생했다. 해결 방법 sudo apt-get install ruby-full 위의 명령어로 ruby 설치를 했다면 echo '# Install Ruby Gems to ~/gems' >> ~/.bashrc echo 'export GEM_HOME="$HOME/gems"' >> ~/.bashrc echo 'export PATH="$HOME/gems/bin:$PATH"' >> ~/.bash..

에러 해결 2022.08.19

[typescript] NFT 토큰 민팅하는 dApp 간단히 구현하기

목차 - 디렉토리 구조 - 모듈 설치 및 기본 설정 - 구현 코드 - 결과 디렉토리 구조 모듈 설치 및 기본 설정 프론트 npx create-next-app@latest --typescript front npm i @chakra-ui/react @emotion/react@^11 @emotion/styled@^11 framer-motion@^6 npm install web3 샤크라라는 라이브러리를 사용해서 이미 만들어져있는 리액트 컴포넌트를 사용해서 편하게 작업할 것임 백 mkdir truffle cd truffle truffle init cd contracts npm init npm i openzeppelin-solidity truffle.config.js에서 development 주석 해제 https:..

[Remix IDE] Opensea 마켓에 NFT 토큰 생성해서 올려보기

목차 - NFT토큰과 그냥 토큰과의 차이점 - remix IDE로 NFT 토큰 생성해보기 - Opensea 마켓에 등록해보기 NFT토큰과 그냥 토큰과의 차이점 ERC 20 - Token fungible Token ERC-721 - Token Non-funfible Token fingible Token : 토큰을 값어치로 표현한다. 1개에 천원이면 2장 이천원 NFT - 토큰마다 가치가 다른 것. code로 구현하자면 어떤 느낌일까? 토큰이 생성될 때마다 고유키 값을 부여해주면 된다.(민팅) mint(msg.sender, 1) address) public owned; 가 존재한다. 키 값을 넣으면 계정주가 나옴. 영화관에 돈 넣으면 나오는 티켓처럼. 가치가 달라질 수 있음 (암표라던가.) 그래서 오늘 할 ..

[스마트 컨트랙트, open-zeppelin] 토큰 <-> 이더리움 스왑 구현해보기

목차 - ERC20 - open zeppelin - ERC20 변수타입, 메서드, 함수 - 직접 구현해보기 - 테스트 코드(jest) ERC20 이더리움에는 이더리움의 표준안을 만들기 위해 유저들이 의견을 내는 게시판같은 장소가 있다. 바로 Ethereum Improvement Proposals, EIPs이다.(EIPs 링크) 이 EIPs에는 Core/Networking/Interface/ERC의 네가지 카테고리가 있다. ERC는 Ethereum Request for Comment의 준말이다. 이 ERC20은 ERC 카테고리의 20번 글이다.(ERC20 링크) 이더리움의 창시자, 비탈릭이 제안한 코인 표준안이다. 인터페이스 규약이 정의되어있는 글이라 보면 된다. OpenZeppelin 이더리움 공식 문서..

[스마트 컨트랙트] 물건 사고, 환불하는 dApp 간단히 구현

사과를 구매하고, 환불할 수 있는 아주아주 간단한 dApp을 구현해보겠다. 목차 - 디렉토리 구조 - truffle 백 - 프론트 - 메타마스크 연결 - 물건 사고, 환불해보기 디렉토리 구조 Truffle 배포하기 터미널 열고 npx ganache-cli 다른 터미널에 mkdir truffle cd truffle truffle init truffle/contracts/AppleShop.sol // SPDX-License-Identifier: MIT pragma solidity ^0.8.15; contract AppleShop{ mapping (address => uint) myApple; //address를 넣어주면 uint(정수)값이 튀어나온다. function buyApple() public paya..