mintint contract을 올려서 테스트 중인데, 대부분의 경우 mintNFT 예제가 아래와 같더라구요.
그런데, 실제로 webbrowser에서 해당 함수를 이용해 mint를 해보면 "Can not send value to non-payable contract method or constructor"가 발생한걸 확인했습니다. 그렇다면 아래 함수를 단순히 payable로 변경하면 되는건가요? 아니면 이 함수에 mint를 시도한 계정에서 klay를 받는 로직까지 구현해 주어야 하는지요?
function mintNFT(string memory tokenURI)
public
onlyOwner
returns (uint256)
{
uint256 supply = totalSupply();
_tokenIds.increment();
uint256 newItemId = _tokenIds.current();
_mint(msg.sender, newItemId);
_setTokenURI(newItemId, tokenURI);
return newItemId;
}