波卡链Substrate 托盘Pallets进阶
Posted thefist11
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了波卡链Substrate 托盘Pallets进阶相关的知识,希望对你有一定的参考价值。
1. 7 个部分组成:
- 导入和依赖
- 托盘类型的声明
- 运行时配置特性
- 运行时存储
- 运行时事件
- 挂钩
- 外在的Extrinsics
2.
// 1. Imports and Dependencies
pub use pallet::*;
#[frame_support::pallet]
pub mod pallet
use frame_support::pallet_prelude::*;
use frame_system::pallet_prelude::*;
// 2. Declaration of the Pallet type
// This is a placeholder to implement traits and methods.
#[pallet::pallet]
#[pallet::generate_store(pub(super) trait Store)]
#[pallet::generate_storage_info]
pub struct Pallet<T>(_);
// 3. Runtime Configuration Trait
// All types and constants go here.
// Use #[pallet::constant] and #[pallet::extra_constants]
// to pass in values to metadata.
#[pallet::config]
pub trait Config: frame_system::Config ...
// 4. Runtime Storage
// Use to declare storage items.
#[pallet::storage]
#[pallet::getter(fn something)]
pub MyStorage<T: Config> = StorageValue<_, u32>;
// 5. Runtime Events
// Can stringify event types to metadata.
#[pallet::event]
#[pallet::generate_deposit(pub(super) fn deposit_event)]
pub enum Event<T: Config> ...
// 6. Hooks
// Define some logic that should be executed
// regularly in some context, for e.g. on_initialize.
#[pallet::hooks]
impl<T: Config> Hooks<BlockNumberFor<T>> for Pallet<T> ...
// 7. Extrinsics
// Functions that are callable from outside the runtime.
#[pallet::call]
impl<T:Config> Pallet<T> ...
以上是关于波卡链Substrate 托盘Pallets进阶的主要内容,如果未能解决你的问题,请参考以下文章