调用智能合约在javascript web3中充当字符串

问题描述 投票:0回答:1

这是我的问题:而不是像这样调用智能合约函数

//assuming the name of the contract function is called "balanceOf"
contract.methods.balanceOf("0x", "0x").call(err, balance) => {
      console.log({err, balance});
})

我想知道是否可以像这样打电话:

var funcName = "balanceOf";
var parameter = "0x, 0x";
contract.methods.funcName(parameter).call(err, balance) => {
     console.log({err, balance}];
})

谢谢。

javascript smartcontracts web3
1个回答
0
投票

通过使用键作为索引,可以像数组一样访问javascript中的对象。所以在你的情况下它将是:

var funcName = "balanceOf";
var parameter = "0x, 0x";
contract.methods[funcName]("0x", "0x").call(err, balance) => {
   console.log({err, balance}];
})

但是传递参数的方式不会像那样工作。您只是将字符串作为参数传递。可以把它想象成将参数传递给任何其他函数。

© www.soinside.com 2019 - 2024. All rights reserved.