Hardhat 3: Как развернуть смарт -контракт в сценарии на Localhost?Javascript

Форум по Javascript
Ответить
Anonymous
 Hardhat 3: Как развернуть смарт -контракт в сценарии на Localhost?

Сообщение Anonymous »

Я играю с простым проектом выпуска токена ERC20. Следуя примеру в hardhat3 doc, я успешно развернул контракт на Localhost с CLI, как ниже: < /p>
  • Запустите локальный блокчейн npx hardhat node < /code> < /li>
    Развертывание смарт -контракта npx hardhat развертывание. зажигание/модули/leocoin.js
, затем взаимодействуйте со смарт -контрактом в файле в соответствии с скриптами. ../Ignition/modules/leocoin.js

Код: Выделить всё

import { buildModule } from '@nomicfoundation/hardhat-ignition/modules';

export default buildModule('LeoCoin', (m) => {
const LeoCoin = m.contract('LeoCoin', ['LeoCoin', 'LC', 100000]);

return { LeoCoin };
});
< /code>

 Код для скрипта, который я хочу запустить < /li>
< /ol>
import LeoCoinModule from '../ignition/modules/LeoCoin.js';
import hre from 'hardhat';

async function main() {
const connection = await hre.network.connect();
const { LeoCoin } = await connection.ignition.deploy(LeoCoinModule);
let res = await LeoCoin.getAddress();
console.log(`LeoCoin deployed to: ${res}`);
const accounts = await connection.ethers.getSigners();
res = await LeoCoin.balanceOf(accounts[0].address);
console.log(res);
}

main().catch(console.error);
И я запускаю его с помощью npx hardhat run scripts/script.js -network localhost
Я получил ниже результат:
LeoCoin deployed to: 0x5FbDB2315678afecb367f032d93F642f64180aa3
Error: could not decode result data (value="0x", info={ "method": "balanceOf", "signature": "balanceOf(address)" }, code=BAD_DATA, version=6.15.0)
at makeError (E:\Code\Option\node_modules\ethers\src.ts\utils\errors.ts:698:21)
at assert (E:\Code\Option\node_modules\ethers\src.ts\utils\errors.ts:719:25)
at Interface.decodeFunctionResult (E:\Code\Option\node_modules\ethers\src.ts\abi\interface.ts:916:9)
at staticCallResult (E:\Code\Option\node_modules\ethers\src.ts\contract\contract.ts:346:35)
at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
at async staticCall (E:\Code\Option\node_modules\ethers\src.ts\contract\contract.ts:303:24)
at async Proxy.balanceOf (E:\Code\Option\node_modules\ethers\src.ts\contract\contract.ts:351:41)
at async main (file:///E:/Code/Option/scripts/Option.js:16:9) {
code: 'BAD_DATA',
value: '0x',
info: { method: 'balanceOf', signature: 'balanceOf(address)' },
shortMessage: 'could not decode result data'
}
< /code>
И я не вижу, чтобы терминал узла возвращает какое -либо сообщение о развертывании. Если да, как?

Подробнее здесь: https://stackoverflow.com/questions/797 ... -localhost
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»