react项目使用redux初始化方式

 更新时间:2024年01月25日 10:21:32   作者:·前端小李  
这篇文章主要介绍了react项目使用redux初始化方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

1.下载依赖包

npm i redux react-redux redux-thunk redux-devtools-extension

2.src下新建store文件夹

store文件夹新建如下目录

----store                 // redux相关存放文件夹
    ---index.js           // redux出口文件
    ---actions/模块.js    // 存放组件中dispatch的函数
    ---actionTypes.js     // 存放dispatch携带的type常量
    ---reducers/index.js  // 主要用来合并模块并导出store
    ---reducers/模块.js   // store中模块的reducers

3.store/模块文件

模块文件需要写入reducer的函数并设置默认状态

/*
    1.定义初始状态,初始状态要根据实际业务确定(慎重),根据实际业务确定初始状态是数组还是对象
    2. 导出一个reducers的函数 并设置默认状态 下面天谴写好Swatch的格式
*/
const initChannels = {
  activeId: 0,
  channels: []
}
 
export default function Channels (state = initChannels, action) {
  switch (action.type) {
    case action.type:
      return action.type
    default:
      return state
  }
}

4.reducer/index.js

/*
      1.从redux中导入合并reducers中的方法
      2.导入相关模块进行合并导出 
*/
 
import { combineReducers } from 'redux'
import Channel from './Channel'
import NewsList from './NewsList'
 
export default combineReducers({
  Channel,
  NewsList
})

5.配置store/index.js文件

// 1.导入创建store的方法和中间件的方法
import { createStore, applyMiddleware } from 'redux'
// 2.导入thunk使dispatch内部可以写函数
import thunk from 'redux-thunk'
// 3.导入redux调试工具
import { composeWithDevTools } from 'redux-devtools-extension'
// 4.导入reducers并挂载
import rootReducers from '@/store/reducers'
/* 5.创建store
    第一个参数是reducers第二个参数是先注册
    第二个参数先使用redux调试工具最外层包裹 在使用中间件对thunk进行包裹
*/
export default createStore(
  rootReducers,
  composeWithDevTools(applyMiddleware(thunk))
)

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持程序员之家。

相关文章

  • Remix如何支持原生?CSS方法详解

    Remix如何支持原生?CSS方法详解

    这篇文章主要为大家介绍了Remix如何支持原生CSS的方法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • 修复Next.js中window?is?not?defined方法详解

    修复Next.js中window?is?not?defined方法详解

    这篇文章主要为大家介绍了修复Next.js中window?is?not?defined方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • 详解如何优雅地在React项目中使用Redux

    详解如何优雅地在React项目中使用Redux

    这篇文章主要介绍了详解如何优雅地在React项目中使用Redux,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • React Store及store持久化的使用教程

    React Store及store持久化的使用教程

    这篇文章主要介绍了React Store及store持久化的使用教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-01-01
  • react native环境安装流程

    react native环境安装流程

    React Native 是目前流行的跨平台移动应用开发框架之一。本文介绍react native环境安装流程及遇到问题解决方法,感兴趣的朋友一起看看吧
    2021-05-05
  • 一文详解React组件API

    一文详解React组件API

    这篇文章主要介绍了React的组件API,及组件API的用法详解,文中有详细的代码示例,对学习或工作有一定的参考价值,感兴趣的同学可以阅读本文
    2023-04-04
  • React复制到剪贴板的示例代码

    React复制到剪贴板的示例代码

    本篇文章主要介绍了React复制到剪贴板的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • react中的useContext具体实现

    react中的useContext具体实现

    useContext是React提供的一个钩子函数,用于在函数组件中访问和使用Context,useContext的实现原理涉及React内部的机制,本文给大家介绍react中的useContext具体实现,感兴趣的朋友一起看看吧
    2023-11-11
  • 30行代码实现React双向绑定hook的示例代码

    30行代码实现React双向绑定hook的示例代码

    本文主要介绍了30行代码实现React双向绑定hook的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • React-Route6实现keep-alive效果

    React-Route6实现keep-alive效果

    本文主要介绍了React-Route6实现keep-alive效果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧<BR>
    2022-06-06

最新评论


http://www.vxiaotou.com