contract().new

部署智能合约,包含了交易生成、签名,广播。

用法

visionWeb.contract().new(options);

入参

参数描述类型默认值
options合约部署参数,具体参数见下方object-

options 参数

参数描述类型默认值
feeLimit燃烧 vs 的阈值,最大 1000000000vdt(=1000vs)number20000000
callValue本次调用往合约中转入 vs 的数量,单位 vdtnumber0
tokenId本次调用往合约中转入 vrc10 的 token id,如果没有,无需设置string""
tokenValue本次调用往合约中转入 vrc10 的数量,如果没有设置 tokenId,该项设置为 0,或者不设置number0
userFeePercentage指定的使用该合约用户的资源占比,是[0, 100]之间的整数。如果是 0,则表示用户不会消耗资源。如果开发者资源消耗完了,才会完全使用用户的资源。number100
originEntropyLimit创建者设置的,在一次合约执行或创建过程中创建者自己消耗的最大的 entropy,是大于 0 的整数number10000000
abi合约的 abiobject | array-
bytecode合约的 bytecodestring""
parameters合约构造函数的入参array[]
name合约名称string""
permissionId可选参数,用于多重签名number0

返回值

object,广播之后的交易对象。

示例

visionWeb.contract().new({
  abi: "contract abi",
  bytecode: "contract bytecode",
  feeLimit: 1000000000,
  callValue: 0,
  userFeePercentage: 100,
  originEntropyLimit: 1,
}).then(instance => {console.log(instance.address)});
> 46f151d2b560d0f0a983cdbfc85fff392bb8874258