首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Redux工具包typescript --我的PayloadAction类型是什么?

Redux工具包typescript中的PayloadAction类型是一个泛型类型,用于定义Redux中的action。它是一个包含两个字段的对象:type和payload。type字段表示action的类型,payload字段表示携带的数据。

PayloadAction类型的定义如下:

代码语言:txt
复制
type PayloadAction<Payload, Type extends string = string, Meta = never, Error = never> = {
  type: Type;
  payload: Payload;
  meta?: Meta;
  error?: Error;
};

其中,Payload是payload字段的类型,Type是action的类型(默认为字符串类型),Meta和Error是可选字段,用于携带额外的元数据和错误信息。

使用PayloadAction类型可以定义一个带有payload的action,例如:

代码语言:txt
复制
const increment = createAction<number>('INCREMENT');
const decrement = createAction<number>('DECREMENT');

const initialState = { count: 0 };

const counterReducer = createReducer(initialState, (builder) => {
  builder
    .addCase(increment, (state, action) => {
      state.count += action.payload;
    })
    .addCase(decrement, (state, action) => {
      state.count -= action.payload;
    });
});

在上面的示例中,increment和decrement是使用createAction函数创建的action,它们的payload类型都是number。counterReducer是使用createReducer函数创建的reducer,它会根据action的类型来更新state。

推荐的腾讯云相关产品和产品介绍链接地址:

以上是推荐的腾讯云产品,可以根据具体需求选择适合的产品。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的沙龙

领券