const CreateInputElement = ({ name, placeholder = "", onChange = () => { }, value=undefined }) => {
return (
<InputWrapper>
{
value === undefined
? <Input name={name} placeholder={placeholder} onChange={onChange}></Input>
: <Input name={name} placeholder={placeholder} onChange={onChange} value={value}></Input> } </InputWrapper>
);
}
[TIL] 한줄 요약
날짜
- 2022.06.15.
목표
- OpenSea 클론코딩 - IPFS 연동
- FBI 개인 프로젝트 - 글쓰기 구현
내용
react - input value warning 해결
- 문제 - value에 undefined가 들어갈 수 있어 발생
- 해결
- 1번째 방법
const provider = await new ethers.providers.Web3Provider(window.ethereum); const signer = await provider.getSigner(); let contract = await new ethers.Contract(SEANAPSE_NFT_CONTRACT_ADDRESS, seanpaseNtfAbi, signer, provider);
- 2번째 방법
<input value={state.value || ''} />
- 1번째 방법
ethers 모듈 -사용한 Metamask 지갑 서명
- 상황 - MetaMask를 통해 NFT 민팅
solidity - address payable
- 상황 - 여러 로직을 실행 후 msg.sender가 다른 계정에 ether를 보내줄 때
function sendTo(address payable _to) public payable{
bool result = _to.send(msg.value); // 결과를 반환값으로 돌려줌!
require(result,"Send function failed.");
emit PaymentSuccessful(msg.value);
}
JS - jsonObject → 문자열 → Blob → File
- 상황 - Object를 File로 생성하여 전달해야하는 경우
new File([new Blob([JSON.stringify(obj)])], "fileName.json");
결론
- 자세한 부분에 대한 학습 진행
- 모듈을 사용하지 않고 직접 구현하는 중
'I Learned > TIL' 카테고리의 다른 글
[TIL] 협업 개발 도구에는 무엇이? (0) | 2022.06.19 |
---|---|
[TIL] well-known port (0) | 2022.06.18 |
[TIL] Why 토큰 이코노미? React에서 useState의 set함수는 비동기 (0) | 2022.06.17 |
[TIL] 경고와 버전 이슈 (0) | 2022.06.15 |
[TIL] OpenSea 클론코딩 시작 및 DeSo 컨트랙트 개발 (0) | 2022.06.14 |