You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在TypeScript提交Aptos交易时传递Option类型参数

在TypeScript中处理Aptos交易的Option类型参数

Aptos的std::option::Option类型在交易负载里的序列化规则很明确,分两种情况处理:

  • 传None时,直接用空数组[]
  • 传Some(value)时,用包含对应值的数组,比如[目标值]

结合你要调用的myfun函数,给你两个具体的代码示例:

示例代码

场景1:参数c传None

// 假设num_a、num_b是你要传入的u64数值
const payload = {
  type: "entry_function_payload",
  function: "你的合约地址::合约模块名::myfun", // 替换成实际的函数路径
  type_arguments: [],
  arguments: [num_a.toString(), num_b.toString(), []], // 最后一个[]对应None
};

场景2:参数c传Some(address)

// 替换成你要传入的目标地址
const targetAddr = "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef";
const payload = {
  type: "entry_function_payload",
  function: "你的合约地址::合约模块名::myfun",
  type_arguments: [],
  arguments: [num_a.toString(), num_b.toString(), [targetAddr]], // 数组包裹地址对应Some
};

补充说明

  • Aptos底层对Option用标签化数组序列化:标签0对应None(空数组),标签1对应Some(带值的数组),不过SDK会自动处理标签逻辑,你直接按上面的格式传就行。
  • address类型参数必须是带0x前缀的标准十六进制字符串。

内容的提问来源于stack exchange,提问作者0xbe1

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 22:25:48