不发出简单结构的创建事件

问题描述

我在自定义托盘中有一个简单的结构:

#[derive(Encode,Decode,Clone,RuntimeDebug,PartialEq,Eq)]
pub struct Kitty(pub [u8; 16]);

我能够从 polkadot.js 网络应用程序创建一个新的 Kitty 并检查 KittyCreated 事件是否在查看网络资源管理器时发出:

/// A kitty is created. \[owner,kitty_id,kitty\]
KittyCreated(AccountId,u32,Kitty)

但是,当我修改 Kitty 结构以获得额外的 u32 参数时,对象被创建,但事件发出:

#[derive(Encode,Eq)]
pub struct Kitty(pub [u8; 16],pub u32);

如果我检查 Developer ChainState 并查询我获得的帐户 Kitties:

kitties.kitties: Option<Kitty>
<unkNown>

看起来结构有问题,你知道是什么吗?

解决方法

我的错,不得不补充:

  "Kitty": "([u8; 16],u32)",....
   }

到 Settings.Developer