React项目集成Immutablejs
1、前言本文章项目的依赖包及其版本如下: Package NameVersionantd^3.16.6connected-react-router^6.4.0customize-cra^0.2.12immutable^4.0.0-rc.12react^16.8.6react-app-rewired^2.1.1react-redux^7.0.3react-router-config^5.0.0react-router-dom^5.0.0react-scripts3.0.1redux^4.0.1redux-logger^3.0.6redux-persist^5.10.0redux-persist-expire^1.0.2redux-persist-transform-immutable^5.0.0redux-saga^1.0.22、准备工作,搭建项目下面是我的项目结构,每个人或者每个公司都有自己的目录架构,这里我的只供大家参考,另外搭建项目过程和介绍如何使用immutable.js不是本文章的重点,如何使用immutable.js以及本文章相关代码后面我会给出,如果有疑问欢迎大家在下面留言 |-- App.js|-- index.js|-- serviceWorker.js|-- assets| |-- audio| |-- css| | |-- App.scss| | |-- base.scss| | |-- index.css| | |-- override-antd.scss| |-- image| | |-- Welcome.png| | |-- awbeci.png| | |-- bgLogo.png| | |-- hiy_logo.png| | |-- indexPop1.png| | |-- indexPop2.png| | |-- logo.png| | |-- logoX.png| | |-- right.png| |-- video|-- components| |-- HOC| | |-- loading.js| |-- common| |-- layout| |-- AppRoute.js| |-- LayoutPage.js| |-- Loading.js| |-- MasterPage.js| |-- RouterView.js| |-- SideMenu.js| |-- layoutPage.scss| |-- masterPage.scss|-- config| |-- base.conf.js|-- context| |-- themeContext.js|-- pages| |-- DepartmentManage.js| |-- Index.js| |-- NoFound.js| |-- NoPermission.js| |-- UserManage.js| |-- login| |-- Login.js| |-- login.scss|-- redux| |-- actions| | |-- authAction.js| | |-- layoutPageAction.js| |-- middleware| | |-- authTokenMiddleware.js| |-- reducers| | |-- authReducer.js| | |-- index.js| | |-- layoutPageReducer.js| |-- sagas| | |-- authSaga.js| | |-- index.js| |-- store| | |-- index.js| |-- thunks|-- router| |-- index.js|-- service| |-- apis| | |-- 1.0| | |-- index.js| | |-- urls.js| |-- mocks| | |-- 1.0| | |-- index.js| | |-- testMock.js| |-- request| |-- ApiRequest.js| |-- MockRequest.js|-- test| |-- App.test.js|-- utils3、集成immutable.js此项目除了依赖包要配置之外,只有redux下的reducer相关文件会设置成immutable.js普通的react组件我没有设置成immutable.js ...