React的@reduxjs/toolkit的异步方法处理和实现

一、使用异步方法,需要 createAsyncThunk 函数

1.首先在特定的ts文件中建立异步

const fetchArticles=createAsyncThunk(
  'searchArticle/fetchArticles',
  async({SearchKey,type},thunkAPI)=>{
    const params = {
      Filter: SearchKey,
      PageSize: 10,
      PageNum: 1,
      ArticleType: "",
    };
    const res: any = await GteArticleListApi(params);
    const state = thunkAPI.getState();
    console.log("文章列表",res.ArticleList, state.searchArticle.ArticleList);
    if (type) {
      const newArticle = state.searchArticle.ArticleList.concat(res.ArticleList);
      return newArticle
    } else {
       return res.ArticleList
    }
  }
)

 2.函数接收为两个值,一个是参数(如果有多个参数,请使用对象方式进行传参),另一个是thunkAPI(一个包含dispatch、getState和extra属性的对象,可以用于在异步操作中进行状态更新或其他操作),如果想要获取initialState的state的值,这个参数比不可少。

相关推荐

  1. React@reduxjs/toolkit异步方法处理实现

    2024-06-14 18:20:03       11 阅读
  2. spring异步@Async方法request丢失问题处理

    2024-06-14 18:20:03       14 阅读
  3. Python中错误异常处理

    2024-06-14 18:20:03       13 阅读
  4. Linux异步通知实验:应用程序对异步通知处理

    2024-06-14 18:20:03       25 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-14 18:20:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-14 18:20:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-14 18:20:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-14 18:20:03       20 阅读

热门阅读

  1. 【Go】使用Go语言实现AES CBC No Padding加密和解密

    2024-06-14 18:20:03       9 阅读
  2. Redis缓存(笔记三:Redis6新数据类型)

    2024-06-14 18:20:03       8 阅读
  3. junit mockito Dao层

    2024-06-14 18:20:03       9 阅读
  4. 如何对Spring管理bean进行增强

    2024-06-14 18:20:03       12 阅读
  5. cloud compare编译

    2024-06-14 18:20:03       6 阅读
  6. Django Form 组件

    2024-06-14 18:20:03       7 阅读
  7. Scala 入门指南:从零开始的大数据开发

    2024-06-14 18:20:03       10 阅读
  8. Scala入门教程

    2024-06-14 18:20:03       9 阅读
  9. 深度学习 - RNN训练过程推演

    2024-06-14 18:20:03       8 阅读
  10. pytest request.session 保持登录状态

    2024-06-14 18:20:03       7 阅读