使用React,实际开发中常用的框架UI框架antd.design路由管理(SPA)react-router-dom状态管理redux,mobx,dvaUI框架antd.designnpm安装antd//(没有版本,安装最新版本)npminstallreact-app-rewiredcustomize-cra//自定义默认配置/package.json/"scripts":{"start":"react-scriptsstart","start":"react-app-rewiredstart","build":"react-scriptsbuild","build":"react-app-rewiredbuild","test":"react-scriptstest","test":"react-app-rewiredtest",}在项目根目录下创建config-overrides.js,修改默认配置。npminstallbabel-plugin-import//按需加载antd组件样式替换moment.js使用day.jsnpminstallantd-dayjs-webpack-plugindayjs使用的完整配置const{override,fixBabelImports,addLessLoader,addWebpackPlugin,}=require("customize-cra");constAntdDayjsWebpackPlugin=require("antd-dayjs-webpack-plugin");module.exports=override(//按需加载antd组件库fixBabelImports("import",{libraryName:"antd",libraryDirectory:"es",style:"true",}),//antd时间组件替换moment.jsuseday.jsaddWebpackPlugin(newAntdDayjsWebpackPlugin()),//使用less样式预处理,自定义主题样式addLessLoader({javascriptEnabled:true,modifyVars:{"@primary-color":"#1DA57A"},}));npmstart查看效果单页面应用SPA(单页面应用)集成react-router-domnpminstallreact-router-dom集成react-router-domreact-router-dom公共组件,在APIHashRouter路径中添加/#/BrowserRouterBuiltonH5HistoryAPI,操作路由跳转更方便BrowserRouter,HashRouter包裹所有路由Switch区分BrowserRouter,HashRouter包裹路由跳转Routehangs加载不同的路由显示界面Link跳转,类似标签代码方式跳转import{useHistory}来自“反应路由器做m";history.push("/home");调整目录结构创建components目录存放组件创建ClassComponent和FunctionComponent文件夹,移动到components目录创建pages目录存放不同页面home.jsxconstHome=()=>{return
