设计react组件

首先作为一个合格的开发者,不要只满足于编写出了可以运行的代码,而耍了解代码背 后的工作原理;不要只满足于自己编写的程序能够运行,还要让自己的代码可读而且易 于维护 。 这样才能开发出高质量的软件 。

易于维护组件的设计要素

作为软件设计的通则,组件的划分要满足高内聚(High Cohesion)和低耦合(Low Coupling)的原则 。

高内聚指的是把逻辑紧密相关的内容放在一个组件中 。 用户界面无外乎内容 、 交互 行为和样式 。 传统上,内容由 HTML 表示,交互行放在 JavaScript代码文件中,样式放 在 css 文件中定义 。 这虽然满足一个功能模块的需要,却要放在三个不同的文件中,这 其实不满足高内聚的原则 。 React却不是这样,展示内容的 JSX、定义行为的 JavaScript 代码,甚至定义样式的 css,都可以放在一个 JavaScript文件中,因为它们本来就是为了实现一个目的而存在的,所以说 React天生具有高内聚的特点 。

低耦合指的是不同组件之间的依赖关系要尽量弱化,也就是每个组件要尽量独立 。保持整个系统的低耦合度,需要对系统中的功能有充分的认识,然后根据功能点划分模 块,让不同的组件去实现不同的功能,这个功夫还在开发者身上,不过, React 组件的对 外接口非常规范,方便开发者设计低祸合的系统 。

react组件的数据

俗话说的好  差劲的程序员操心代码,优秀的程序员操心数据结构和它们之间的关系

React组件的数据分为两种, prop和 state,无论 prop或者 state 的改变,都可能引发组件的重新渲染,那么,设计一个组件的时候,什么时候选择用 prop什么时候选择用state 呢?其实原则很简单, prop 是组件的对外接口, state 是组件的内部状态,对外用prop,内部用 state。

原文地址:https://www.cnblogs.com/mawn/p/9065829.html

时间: 2024-11-09 06:00:20

设计react组件的相关文章

react 组件构建设计

项目设计中,可以从顶层React元素开始,然后实现它的子组件,自顶向下来构建组件的层级组件的写法:1.引入依赖模块2.定义React组件3.作为模块导出React组件4.子组件更新父组件的机制5.父组件传递一个回调函数作为子组件的属性. 每当子组件想要更新父组件的state时,它就会调用这个回调函数并传递必要的数据到父组件的新状态中父组件更新它的state,触发render()函数重新渲染所有有必要更新的子组件:React单向数据流绑定,父组件通过getInitialState设定默认数据,数据

封装react组件——三级联动

思路: 数据设计:省份为一维数组,一级市为二维数组,二级市/区/县为三维数组.这样设计的好处在于根据数组索引实现数据的关联. UI组件: MUI的DropDownMenu组件或Select Field组件.将省市县数据定位常量,在UI组件里引用,通过数组遍历. 数据设计代码:(鉴于数据比较多,只列举部分) provinceData.js /********** 省级数据 **********/ export const provinces =['安徽省','澳门特别行政区','北京']; /**

React 组件间通讯

React 组件间通讯 说 React 组件间通讯之前,我们先来讨论一下 React 组件究竟有多少种层级间的关系.假设我们开发的项目是一个纯 React 的项目,那我们项目应该有如下类似的关系: 父子:Parent 与 Child_1.Child_2.Child_1_1.Child_1_2.Child_2_1 兄弟:Child_1 与 Child_2.Child_1_1 与 Child_2.etc. 针对这些关系,我们将来好好讨论一下这些关系间的通讯方式. (在 React 中,React 组

React—组件生命周期详解

React-组件生命周期详解 转自 明明的博客  http://blog.csdn.net/slandove/article/details/50748473 (非原创) 版权声明:转载请注明出处,欢迎加入QQ群(115402375)讨论!博客编写已经转移到http://blog.csdn.net/limm33 在组件的整个生命周期中,随着该组件的props或者state发生改变,它的DOM表现也将有相应的改变,一个组件就是一个状态机,对于特定的输入,它总会返回一致的输出. React为每个组件

推荐一款中国风React组件

最近看这个中国风的组件在掘金也火了一段时间,看了有几天了,也体验了下,感觉还不错,所以准备来安利下 项目地址:https://github.com/zhui-team/zhui 使用手册请参考:https://inspiring-bardeen-426f2e.netlify.com/ 以下为zh - ui 作者的掘金简介文章 1. 很长的前言 大三狗的寒假到了...众所周知,寒暑假是超越别人的最好的时机.然鹅一不小心就会荒废过去,大二暑假去杭州实习了两个月,这个寒假如果不做点什么开学会被满满的负

如何写好react组件

react 组件方面: 总结 React 组件的三种写法 及最佳实践 [涨经验] React组件编写思路(一) 使用react-router实现单页面应用时设置页面间过渡的两种方式 [翻译]基于 Create React App路由4.0的异步组件加载(Code Splitting) React进阶--使用高阶组件(Higher-order Components)优化你的代码 Higher-order Components 高阶组件 redux方面: Redux-saga 中文文档 https:

React 组件复合

React组件复合 · 通过React写组件时,应当尽可能地将组件分为更小的更多的组件,然后再复合组件. 比如下面的评论组件就是一个组件,一个庞大的组件,这时我们还没有将之分解,更没有复合: function Comment(props) { return ( <div className="Comment"> <div className="UserInfo"> <img className="Avatar" sr

二、React初体验之React组件创建

(中间因为应付各种考试,处理其他事情,隔了好时间没更新,现在终于有时间了,续上!) 本文为React初始体验,因此先不考虑文件如何组织,尽量以最简单的方式让大家了解React其中的原理. 在创建组件(component)之前,大家首先需要了解一些基础知识.有ES6.JSX语法等基础知识的同学请跳过下面一段. ES6是JavaScript的最新标准,里面新增了许多语法方式,甚至出现了“类”的继承方式,我个人暂且把他们理解为新增了许多“语法糖”,这些“语法糖”可能带给老手的是方便,而对于我们这些菜鸟

react组件渲染的一些想法

最近一直在思考一个问题,react的单向数据流面对深层次组件集合(redux connect方法返回的组件,即一项完整的功能)时,数据该如何传递???redux帮助我们解决了什么问题??? 我使用了redux+react,发现redux并没有解决react组件之间数据传递问题.只是把数据中心化与避免了父组件取子孙组件的数据时那繁琐的回调,却增加了三个麻烦的东西action.reducer.mapStateProps.复杂的处理流程:action里新增一条数据,reducer就需要增加一个对该数据