Как определить пользовательский тип с помощью библиотеки субстратов oo7?

Я использую библиотеку Substrate Bonds (oo7) для создания пользовательского интерфейса для моего пользовательского модуля времени выполнения субстрата.

Для поддержки моего пользовательского модуля в интерфейсе субстрата мне нужно определить пользовательский тип. Как я могу это сделать?

1 ответ

Решение

Библиотека oo7 Substrate предоставляет доступ к addCodecTransform() функция, которая позволяет вам определять пользовательские типы, которые вы затем можете использовать в пользовательском интерфейсе.

Например, учитывая эту структуру, определенную в вашем модуле:

#[derive(Encode, Decode, Default, Clone, PartialEq)]
#[cfg_attr(feature = "std", derive(Debug))]
pub struct Kitty<Hash, Balance> {
    id: Hash,
    dna: Hash,
    price: Balance,
    gen: u64,
}

Вы можете сделать следующий вызов JavaScript:

addCodecTransform('Kitty<Hash,Balance>', { 
    id: 'Hash',
    dna: 'Hash',
    price: 'Balance',
    gen: 'u64'
});

Если вы добавите это сделать ваши приложения constructor() Функция, вы можете убедиться, что она вызывается до того, как этого потребуют ваши зависимые функции React.

Другие вопросы по тегам