ここで NFT チュートリアルに従おうとしています。Alchemy にアカウントを設定し、Metamask で .sol ファイルを作成しました。ルートに次のような .env ファイルがあります。
API_URL = "https://eth-ropsten.alchemyapi.io/v2/your-api-key"
PRIVATE_KEY = "your-metamask-private-key"
私の hardhat 設定ファイルは次のようになります。
/**
* @type import('hardhat/config').HardhatUserConfig
*/
require('dotenv').config();
require("@nomiclabs/hardhat-ethers");
const { API_URL, PRIVATE_KEY } = process.env;
module.exports = {
solidity: {
compilers: [
{
version: "0.5.7"
},
{
version: "0.8.0"
},
{
version: "0.6.12"
}
]
},
defaultNetwork: "ropsten",
networks: {
hardhat: {},
ropsten: {
url: API_KEY,
accounts: [`0x${PRIVATE_KEY}`]
}
},
}
ただし、コンパイルしようとすると、次のエラーが発生し続けます。
HardhatConfig.networks の無効な値 {"url":"https://eth-ropsten.alchemyapi.io/v2/your-api-key","accounts":["0xyour-metamask-private-key"]}。 ropsten - タイプ HttpNetworkConfig の値が必要です。
これが HttpNetworkConfig の有効な値ではない理由を理解できないようです。url が文字列で、 accounts が配列である私が持っているものは、ネットワーク構成のドキュメントにあるものに準拠しているように見えます。これはコンパイル エラーなので、実際の URL や秘密鍵に問題があるとは思えませんが、間違っている可能性があります。私は、ハードハット、堅牢性、さらには js などを大雑把にしか理解していない初心者であることを喜んで認めます。