ERROR: CONTRACT.fund is not a function when deploying fund me contrcat with hardhat

Viewed 18

I am trying to run the fund contract after deploying onto a local ganache network but it keeps returning the error "contract.fund" is not defined" I tried other functions and mappings and variables. They all return the same error.

    const { hre } = require('hardhat');
    const { networkConfig, LOCAL, DECIMALS, STARTING_VALUE } = require('../hasbi');

    module.exports = async ({ getNamedAccounts, deployments }) => {
      const { deploy, log } = deployments;
      const deployer  = network.config.accounts[0]
      const chainId = network.config.chainId;
      let ethConstructor;
      if (LOCAL.includes(chainId)) {
        const kwargs = [DECIMALS, STARTING_VALUE]
        log("Local Network Detected! Deploying Mocks...")
        log("------------------------------------------")
        const Mock = await deploy(
          "MockV3Aggregator", {
            from: deployer,
            args: kwargs,
            log: true
          }
        )
        log("--------------------------------------------")
        log("Mocks deployed!")
        ethConstructor = Mock.address;
      } else {
        ethConstructor = network.config.ethUsdPricefeed
      }
      const args = [ethConstructor]
      const contract = await deploy("FundMe",
        {
          log: true,
          args: args,
          from: deployer,
          waitConfirmations: network.config.blockConfirmations
        }
      )
      if (chainId == 1337 || chainId == 31337) {
        console.log("No verification system");
      } else {
        try {
          run(
            "verify:verify", {
              address: contract.address,
              constructorArgs: args
            }
          )
        } catch (e) {
          if (e.message.includes("already verified")) {
            console.log("Already Verified!")
          } else {
            console.log(e)
          }
        }
      } log(contract.fund({value: 1000000000000000000}))
    }

    module.exports.tags = ["all"]

It also returns that error for every other function, array, mapping in the contract so i'm guessing I did something wrong Please help. Error:

    Error: ERROR processing C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\deploy\01.js:
    TypeError: contract.fund is not a function
        at Object.module.exports [as func] (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\deploy\01.js:52:26)
        at processTicksAndRejections (node:internal/process/task_queues:96:5)
        at DeploymentsManager.executeDeployScripts (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat-deploy\src\DeploymentsManager.ts:1219:22)
        at DeploymentsManager.runDeploy (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat-deploy\src\DeploymentsManager.ts:1052:5)
        at SimpleTaskDefinition.action (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat-deploy\src\index.ts:438:5)
        at Environment._runTaskDefinition (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat\src\internal\core\runtime-environment.ts:308:14)
        at Environment.run (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat\src\internal\core\runtime-environment.ts:156:14)
        at SimpleTaskDefinition.action (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat-deploy\src\index.ts:584:32)
        at Environment._runTaskDefinition (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat\src\internal\core\runtime-environment.ts:308:14)
        at Environment.run (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat\src\internal\core\runtime-environment.ts:156:14)
        at DeploymentsManager.executeDeployScripts (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat-deploy\src\DeploymentsManager.ts:1222:19)
        at processTicksAndRejections (node:internal/process/task_queues:96:5)
        at DeploymentsManager.runDeploy (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat-deploy\src\DeploymentsManager.ts:1052:5)
        at SimpleTaskDefinition.action (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat-deploy\src\index.ts:438:5)
        at Environment._runTaskDefinition (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat\src\internal\core\runtime-environment.ts:308:14)
        at Environment.run (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat\src\internal\core\runtime-environment.ts:156:14)
        at SimpleTaskDefinition.action (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat-deploy\src\index.ts:584:32)
        at Environment._runTaskDefinition (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat\src\internal\core\runtime-environment.ts:308:14)
        at Environment.run (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat\src\internal\core\runtime-environment.ts:156:14)
        at SimpleTaskDefinition.action (C:\Users\ACER\Desktop\Blockchain\JavaScript\HardHat\HardhatFundMe\node_modules\hardhat-deploy\src\index.ts:669:5)
0 Answers
Related