vue.js 修复生产中缺少的提供程序

qij5mzcb  于 2022-11-25  发布在  Vue.js
关注(0)|答案(1)|浏览(103)

函数getAllTickets作为提供程序调用协定。
问题是,当在localHost中运行应用程序时,此函数工作正常,并且调用了约定方法“getAllTickets”。
但在生产环境(真实的域)中运行应用程序时,我收到错误消息
未捕获的错误:缺少提供程序(参数=“provider”,值=未定义,代码=INVALID_ARGUMENT,版本=providers/5.5.3)

async getAllTickets({commit}) {
    try {
      const provider = new ethers.providers.Web3Provider(window.ethereum)
      const ticketsContract = new ethers.Contract(ticketsContractAddress, ticketsAbi, provider)
      const allTicketsHash = await ticketsContract.getAllTickets()
      const parcedTickets = allTicketsHash.map((ticket) => ({
        ticketOwner: ticket.ticket_owner,
        timestamp: new Date(ticket.timestamp.toNumber() * 1000).toLocaleString(),
        keyword: ticket.keyword,
        amount: parseInt(ticket.amount._hex) / (10 ** 18)
      }))
      commit('setAllTickets', parcedTickets)
      
    } catch (e) {
      console.error(e)
    }
  },
}

作为生产环境中的供应商,处理这种合同方法的正确方式是什么?
我希望用户能够在没有连接钱包的情况下调用此功能。

rggaifut

rggaifut1#

我有一些简单的index.js,使用提供程序JsonRPCPRovider,没有元掩码。

const url = 'https://polygon-rpc.com';

(网址);如果您有任何问题,请联系我们。

相关问题