react实现页面多个模块的切换

简介: react实现页面多个模块的切换

前言


这是做的一个多模块切换的一个案例,也是第一会这样大量的使用表单,大概有7,8个模块,这里用其中的一个模块来做展示


以下三张图片对应的就是三个模块了


这是第一个展示面

这是第二个编辑页

这是呈现数据的页面


实现过程


1、每一个模块就是一个组件

<script>
  // 这里定义一个默认值,作为第一个显示的模块
  state={cls='tj'}
</script>
<div className="module1">
  <div className=`module1_1  ${cls}`>第一个添加模块(当calss名为tj的时候显示)</div>
  <div className=`module1_2  ${cls}`>第一个编辑模块(当calss名为bj的时候显示)</div>
  <div className=`module1_3  ${cls}`>第一个展示模块(当calss名为zs的时候显示)</div>
</div>


2、先把所有3个模块全部隐藏,再利用一个动态class名实现模块的切换

/* 
样式文件
需要用另一个class名限制一下,不然3个组件的切换就会失效
 */
.module1{
  div {
  display: none;
  }
  .module1_1 {
  &.tj{
    display: block;
  }
  }
  .module1_2 {
  &.bj{
    display: block;
  }
  }
  .module1_3 {
  &.zs{
    display: block;
  }
  }
}


总结


1、大量的数据提交,修改,重置,数据的深拷贝和数据还原是关键,可以提炼

2、一个功能就是一个事件,复用起来很方便,不要为一次的省事而作叠加。

3、input 框 value和defaultValue 属性不可以一起使用,会发生冲突

4、获取值一般都是value , 多选框需要通过checked

5、多个模块的状态控制(互不关联),一般情况下是这么设置的

{
module1:false,
module2:false,
module3:false,
}

如果把每一个模块都写成单独的组件,直接用一个状态就可以了

相关文章
|
3月前
|
存储 前端开发 JavaScript
react怎么实现跨页面传参
react怎么实现跨页面传参
123 2
|
9月前
|
前端开发
react如何跳转页面?
react如何跳转页面?
|
3月前
|
资源调度 JavaScript 前端开发
React-Router 5.0 制作导航栏+页面参数传递
React-Router 5.0 制作导航栏+页面参数传递
35 0
|
7天前
|
Web App开发 前端开发 JavaScript
React——前端开发中模块与组件【四】
React——前端开发中模块与组件【四】
16 0
|
3月前
|
数据采集 资源调度 前端开发
React的服务器端渲染:使用ReactDOMServer进行高效页面预渲染
【4月更文挑战第25天】使用ReactDOMServer,React支持服务器端渲染以实现高效预渲染。通过在Node.js环境中将React组件转化为HTML字符串,减少客户端JavaScript负载和渲染时间。优点包括更快首屏加载、改善SEO和兼容无JavaScript环境,但也会增加服务器负载、复杂性和状态管理挑战。开发者需根据项目需求平衡SSR和CSR。
|
3月前
|
前端开发
探索React页面导航:不只有React Router
探索React页面导航:不只有React Router
|
3月前
|
JavaScript 前端开发
React 像 vue 一样配置页面路由,并支持重定向路由,路由守卫等(使用 useRoutes 完成)...
React 像 vue 一样配置页面路由,并支持重定向路由,路由守卫等(使用 useRoutes 完成)...
61 0
|
3月前
|
JavaScript 前端开发
React 像 vue 一样配置页面路由,并支持重定向路由,路由守卫等(使用 useRoutes 完成)
React 像 vue 一样配置页面路由,并支持重定向路由,路由守卫等(使用 useRoutes 完成)
42 0
|
8月前
|
前端开发
写一个react 的页面 录像组件
写一个react 的页面 录像组件
37 0
|
8月前
|
前端开发 CDN
在单html页面中使用react并配置jsx
在单html页面中使用react并配置jsx
38 0