首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏全栈前端精选

    组件设计实战 - 复杂组件设计

    这里我们提出一个组件复杂度的概念,一个组件复杂度的主要来源就是其自身的状态,即组件自身需要维护多少个不依赖于外部输入的状态。 在明确了这点后,我们就可以设计轮播组件的基础 DOM 结构为: <Frame> <SlideList> <SlideItem /> ... 至此,组件设计实战系列文章也将告一段落。 在全部四篇文章中,我们分别讨论了组件库架构,组件分类,文档组织,国际化以及复杂组件设计这几个核心的话题,因笔者能力所限,其中自然有许多不足之处,烦请各位谅解。 组件库作为提升前端团队工作效率的重中之重,花再多时间去研究它都不为过。再加上与设计团队对接,形成设计语言,与后端团队对接,统一数据结构,组件库也可以说是前端工程师在拓展自身工作领域上的必经之路。

    1.3K10发布于 2019-09-29
  • 来自专栏高级前端面试笔记

    React组件设计模式-纯组件,函数组件,高阶组件

    一、组件(1) 函数组件如果你想写的组件只包含一个 render 方法,并且不包含 state,那么使用函数组件就会更简单。 <1> 当组件是独立的,组件在页面中的个数为1或2的,组件有很多props、state,并且当中还有些是数组和对象的,组件需要每次都渲染的,使用Component<2> 当组件经常作为子组件,作为列表, React 的组合特性而形成的设计模式。 组件是将 props 转换为 UI,而高阶组件是将组件转换为另一个组件。(组件是 React 中代码复用的基本单元。) 但是,当你将 HOC 应用于组件时,原始组件将使用容器组件进行包装。这意味着新组件没有原始组件的任何静态方法。

    3.4K20编辑于 2022-10-18
  • 来自专栏狮乐园

    高级 Vue 组件模式 (8)

    虽然父组件拥有了改变 toggle 组件内部状态的途径,但是如果进一步思考的话,父组件并没有绝对的控制权。在一些业务场景,我们期望父组件对于子组件的状态,拥有绝对的控制权。 实现 判定组件是否受控 由于 toggle 组件为一个智能组件,我们需要提供一个判定它是否受控的方式。 false(开关状态为关)作为参数传入触发事件,这将告知父组件,当前组件的下一个状态为关,至于父组件是否同意将其状态更改为关则有父组件决定。 如果组件不受控,开关状态由组件内部自行管理,那和之前的实现逻辑是一模一样的,保留之前的代码即可。 成果 当 toggle 组件被改造后,实现这个需求就很容易了。 你可以通过下面的链接来看看这个组件的实现代码以及演示: sandbox: 在线演示 github: part-8 总结 关于 Controlled Component 和 Uncontrolled Component

    1K10发布于 2020-01-21
  • 来自专栏高级前端面试笔记

    React组件设计模式之-纯组件,函数组件,高阶组件

    一、组件(1) 函数组件如果你想写的组件只包含一个 render 方法,并且不包含 state,那么使用函数组件就会更简单。 <1> 当组件是独立的,组件在页面中的个数为1或2的,组件有很多props、state,并且当中还有些是数组和对象的,组件需要每次都渲染的,使用Component<2> 当组件经常作为子组件,作为列表, React 的组合特性而形成的设计模式。 组件是将 props 转换为 UI,而高阶组件是将组件转换为另一个组件。(组件是 React 中代码复用的基本单元。) 但是,当你将 HOC 应用于组件时,原始组件将使用容器组件进行包装。这意味着新组件没有原始组件的任何静态方法。

    3.2K30编辑于 2022-12-07
  • 来自专栏Web前端

    React 表格组件设计

    在现代 Web 开发中,表格组件是不可或缺的一部分,用于展示数据列表、统计信息等。React 作为一个流行的前端框架,提供了丰富的工具和库来构建高效的表格组件。 本文将从浅到深地介绍 React 表格组件设计,包括常见问题、易错点及如何避免,并通过代码示例来帮助理解这些概念。1. 基本表格组件1.1 常见问题与易错点性能问题:表格组件在处理大量数据时容易出现性能瓶颈。样式问题:表格的样式需要统一且美观。响应式设计:表格需要在不同设备上显示良好。 响应式布局:使用媒体查询或 CSS 框架提供的响应式类来实现响应式设计。1.3 代码示例import React from 'react';import '. 通过本文的介绍,希望读者能够对 React 表格组件设计有一个全面的了解,并在实际开发中合理应用这些设计原则,避免常见的错误和陷阱。

    2.2K10编辑于 2024-11-13
  • 来自专栏Super 前端

    JavaScript组件设计思想

    当然,这里说的是在程序设计方面。自己觉的很有道理,但是体会不是很深。 随即,我们组织了分享讨论会,让匡哥讲述其重构过程中的设计思路。 我陷入了沉思~~~ 现在,大前端流行组件化、模块化。然而,我们的模块又该如何设计实现呢? 下面的实例,参考自【javascript组件开发方式】【GitHub示例地址】 ? ,当我们需要做一套组件。 首先的问题就是,这种写法太灵活了,写单个组件还可以。如果我们需要做一套风格相近的组件,而且是多个人同时在写。那真的是噩梦。 5.

    1.2K51发布于 2019-08-15
  • 来自专栏一Li小麦

    组件设计基础(2)

    组件生命周期 早期的react设计了许多的生命周期钩子。 •确定每个组件是否依赖于状态? •找到共同的父级组件(所有需要状态子组件的共同祖先)。 •常见的组件所有者或另一个更高层次结构的组件。 设想一下,在一个应用中,包含三级或者三级以上的组件结构,顶层的祖父级组件想要传递一个数据给最低层的子组件,用prop的方式,就只能通过父组件中转。 中间那一层父组件根本用不上这个prop,但是依然需要支持这个prop,扮演好搬运工的角色,只因为子组件用得上,这明显违反了低耦合的设计要求。在flux和redux中我们会探讨如何解决这样的困局。 组件设计方法论 一些指导性原则: •组件尽可能通过props通信。不用context •组件属性需要有默认值,做好类型检查 •组件属性尽可能使用简单值。避免使用对象。

    94350发布于 2019-12-04
  • 来自专栏一Li小麦

    组件设计基础(1)

    设计易于维护的组件 单一职责原则在react组件设计中依然管用,尤其是维护一个大型的页面时。但也不是事无巨细都需要拆分。根据所谓"高内聚低耦合"的思想,逻辑紧密的组件是不适合拆分的。 react的组件基础,应当时时复习。必要时自己写一写。 react的组件 在react中组件有很多种方法,es5下createClass在React16以后的版本全部废弃。 ) 在维护一个拥有众多子组件的页面时,也许有些组件跟你当前的功能八杆子打不着。 每个React组件都是独立存在的模块,组件之外的一切都是外部世界,外部世界就是通过prop来和组件对话的。 既然prop是组件的对外接口,那么就应该有某种方式让组件声明自己的接口规范。 prop和state的差异 •prop用于定义外部接口,state用于记录内部状态;•prop的赋值在外部世界使用组件时,state的赋值在组件内部;•组件不应该改变prop的值,而state存在的目的就是让组件来改变的

    69440发布于 2019-12-04
  • 来自专栏JavaEdge

    Tomcat组件设计

    Tomcat提供一堆积木,怎么搭建这些积木你决定,你可根据需要灵活选择组件搭建你的Web容器,并且可自定义组件。 2 Web容器如何实现这种组件设计? 无论哪种方式,在实例化类前,Web容器需把组件类加载到JVM,这涉及类加载,Web容器设计自己的类加载器。 Spring也是通过反射机制来动态地实例化Bean,那么它用到的类加载器哪来的? Spring也采用类似设计,Spring给Bean生命周期状态提供“扩展点”。 JDK也有这种设计,如Java集合的AbstractSet、AbstractMap。 Java 8开始允许接口有default方法,开始可以把抽象骨架类的通用逻辑放到接口。 6 总结 Web容器为了支持这种组件设计,遵循了一些规范,比如面向接口编程,用“管理者”去组装这些组件,用反射的方式动态的创建组件、统一管理组件的生命周期,并且给组件生命状态的变化提供了扩展点,组件的具体实现一般遵循骨架抽象类和模板模式

    55830编辑于 2022-12-13
  • 来自专栏前端小馆

    浅谈 React 组件设计

    前面讲了几种 jQuery 插件的设计模式,其实万变不离其宗,不管是 jQuery 还是 React,组件设计思想都是一样的。 个人觉得,组件设计应该遵循以下几个原则: 适当的组件粒度:一个组件尽量只做一件事。 复用相同部分:尽量复用不同组件相同的部分。 松耦合:组件不应当依赖另一个组件。 我们不妨转换一下思路,当设计一个通用组件的时候,一定要只有一个组件吗?一定要把数据传给组件吗? 那么来一起看看业界知名的组件库 Ant Design 是如何设计 Tabs 组件的。 总结 组件设计是一项重要的工作,好的组件我们直接拿来复用可以大大提高效率,不好的组件只会增加我们的复杂度。 在组件设计的学习中,你需要多探索、实践,多去参考社区知名的组件库,比如 Ant Design、Element UI、iview 等等,去思考他们为什么会这样设计,有没有更好的设计

    1.5K10编辑于 2022-05-09
  • 来自专栏程序员成长指北

    前端组件设计原则

    虽然在两种不同的前端框架之间进行切换确实需要学习很多,但是二者之间在很多基础概念、设计思路上是相通的。其中之一就是组件设计,包括组件层次结构设计以及组件各自的职责划分。 以下这个列表并不是不全面也不完整,但我注意到的只有 8 件事情值得一提,对于那些已经可以编写基本组件但想要提高他们的技术设计技能的人来说。 所以这是列表: 以下列举的这个列表仅仅是是我注意到的 8 个方面,当然组件设计还有其他一些方面。在此我只是列举出来我认为值得一提的。 对于已经掌握基本的组件设计并且想要提高自身的组件设计能力的开发者,我认为以下 8 项是我认为值得去注意的,当然这并不是组件设计的全部。 虽然 OOP 类设计和前端组件设计差异很大,但是通过图解辅助设计的方法值得参考。

    2.3K20发布于 2020-10-10
  • 来自专栏漫画前端

    前端组件设计原则

    虽然在两种不同的前端框架之间进行切换确实需要学习很多,但是二者之间在很多基础概念、设计思路上是相通的。其中之一就是组件设计,包括组件层次结构设计以及组件各自的职责划分。 以下这个列表并不是不全面也不完整,但我注意到的只有 8 件事情值得一提,对于那些已经可以编写基本组件但想要提高他们的技术设计技能的人来说。 所以这是列表: 以下列举的这个列表仅仅是是我注意到的 8 个方面,当然组件设计还有其他一些方面。在此我只是列举出来我认为值得一提的。 对于已经掌握基本的组件设计并且想要提高自身的组件设计能力的开发者,我认为以下 8 � 项是我认为值得去注意的,当然这并不是组件设计的全部。 虽然 OOP 类设计和前端组件设计差异很大,但是通过图解辅助设计的方法值得参考。

    1.6K20发布于 2020-12-16
  • 来自专栏BestSDK

    5分钟掌握8个常用交互组件,轻松进阶原型设计

    一、弹出菜单 弹出菜单是原型设计中最常用的组件,许多组件的使用方法也与它类似,熟练使用弹出菜单将会给您带来莫大的帮助。接下来我们从实际案例来看一看如何使用弹出菜单。 1. 随意拖出一个组件,这里我们以Mockplus中的按钮组件为例。 ? 2.拖出弹出菜单组件,将按钮右上角的链接点与菜单组件相连。 ? 3.双击弹出菜单以编辑菜单位置及内容。 ? 三、抽屉 抽屉是一个常用的容器型组件,其特点为高度封装、高度可调节性、高度可容纳性,换句话说,您无需自行设计抽屉的细节,只需简单设置几下即可的到一个以多种方式滑出。 ? 在将按钮的链接点与抽屉连接后,双击抽屉图标即可添加组件。 ? 四、图片轮播 图片轮播组件支持数张图片的乱转展示,同样操作简单。先将图片轮播组件拖入工作区内,双击添加图片即可。 ? 五、面板 面板其实就是一个可供放置组件的容器。 将能容面板拖至需要的地方,调整大小,双击进入编辑模式,拖入需要的组件即可。注意,组件超出面板边界的地方不会显示。

    1.7K100发布于 2018-03-01
  • 来自专栏各类技术文章~

    浅谈 React 组件设计

    前面讲了几种 jQuery 插件的设计模式,其实万变不离其宗,不管是 jQuery 还是 React,组件设计思想都是一样的。 个人觉得,组件设计应该遵循以下几个原则: 适当的组件粒度:一个组件尽量只做一件事。 复用相同部分:尽量复用不同组件相同的部分。 松耦合:组件不应当依赖另一个组件。 我们不妨转换一下思路,当设计一个通用组件的时候,一定要只有一个组件吗?一定要把数据传给组件吗? 那么来一起看看业界知名的组件库 Ant Design 是如何设计 Tabs 组件的。 总结 组件设计是一项重要的工作,好的组件我们直接拿来复用可以大大提高效率,不好的组件只会增加我们的复杂度。 在组件设计的学习中,你需要多探索、实践,多去参考社区知名的组件库,比如 Ant Design、Element UI、iview 等等,去思考他们为什么会这样设计,有没有更好的设计

    1K20发布于 2021-10-22
  • 来自专栏code秘密花园

    前端组件设计原则

    虽然在两种不同的前端框架之间进行切换确实需要学习很多,但是二者之间在很多基础概念、设计思路上是相通的。其中之一就是组件设计,包括组件层次结构设计以及组件各自的职责划分。 以下这个列表并不是不全面也不完整,但我注意到的只有 8 件事情值得一提,对于那些已经可以编写基本组件但想要提高他们的技术设计技能的人来说。 所以这是列表: 以下列举的这个列表仅仅是是我注意到的 8 个方面,当然组件设计还有其他一些方面。在此我只是列举出来我认为值得一提的。 对于已经掌握基本的组件设计并且想要提高自身的组件设计能力的开发者,我认为以下 8 项是我认为值得去注意的,当然这并不是组件设计的全部。 虽然 OOP 类设计和前端组件设计差异很大,但是通过图解辅助设计的方法值得参考。

    3K30发布于 2020-08-31
  • 来自专栏summerking的专栏

    K8s组件介绍

    kubernetes集群所需的组件。 分为控制平台组件(Control Plane Components)也叫 master 组件(master Components ) 和 节点组件(Node Components) # 控制平台组件( master 组件) 控制平台中的组件对集群进行全局决策(比如:调度),并且监控和应对集群事件(比如:当 deployment 中的 replicas 字段发生变化时,创建/删除 pod)。 控制平台组件可以运行在集群中的任何一台机器上,但是为了简单,通常会在同一台物理机上部署所有的控制平台组件,同时要求用户的容器不能部署在控制平台组件所在的物理机上。 # 总结 Kubernetes 集群的组件分为两部分:master 组件和 node 组件

    76240编辑于 2022-09-19
  • 来自专栏分享学习

    k8s组件含义

    K8s组件含义: Master组件 Master 组件对集群进行全局决策(例如,调度),并检测和响应集群事件(例如,当不满足部署的 replicas 字段时,启动新的 pod)。 1、kube-apiserver master节点上提供k8sapi服务的组件, 2、etcd 保存了k8s集群的一些数据,比如pod的副本数,pod的期望状态与现在的状态 3、scheduler master 4、controller master节点的控制器,负责在节点出现故障时进行通知和响应,负责对节点的pod状态进行监控 Node组件 1、kubelet 一个在集群中每个节点上运行的代理。 附加组件 1、DNS 负责对k8s集群进行域名解析 2、Dashboard Dashboard是k8s集群的一个web界面, 3、集群层面日志 集群层面日志机制负责将容器的日志数据保存到一个集中的日志存储中 k8s流程 以下是我自己对k8s工作流程的理解,只供参考 1、准备好对应的yanl文件,通过kubectl发送到Api Server中 2、Api Server接收到客户端的请求将请求内容保存到etcd

    49320编辑于 2022-05-19
  • 来自专栏前端文章小tips

    Vue 8组件通信方式

    非父子组件之间通信(兄弟组件、隔代关系组件等) 本文会介绍组件间通信的8种方式如下图目录所示:并介绍在不同的场景下如何选择有效方式实现的组件间通信方式,希望可以帮助小伙伴们更好理解组件间的通信。 一、props / $emit 父组件通过props的方式向子组件传递数据,而通过$emit 子组件可以向父组件通信。 1. 父组件向子组件传值 下面通过一个例子说明父组件如何向子组件传递数据:在子组件article.vue中如何获取父组件section.vue中的数据articles:['红楼梦', '西游记','三国演义' 子组件向父组件传值 对于$emit 我自己的理解是这样的: $emit绑定一个自定义事件, 当这个语句被执行时, 就会将参数arg传递给父组件,父组件通过v- on监听并接收参数。 通过一个例子,说明子组件如何向父组件传递数据。

    1.3K40发布于 2021-11-23
  • 来自专栏前端技术地图

    React组件设计实践总结02 - 组件的组织

    组件设计的基本原则 基本原则 高质量组件的特征 2. 基本技巧 3. 拆分 1️⃣ 拆分 render 方法 2️⃣ 拆分为组件 7. 组件划分示例 1️⃣ 划分页面 2️⃣ 划分基础 UI 组件 3️⃣ 设计组件的状态 8. 文档 扩展 ---- 1. 组件设计的基本原则 基本原则 单一职责(Single Responsibility Principle). 不管是什么编程范式, 只要是模块化的程序设计都适用单一职责原则. 在 React 中, 组件就是模块. 单一职责要求将组件限制在一个’合适’的粒度. , 从FormStore的获取和存储值 */} </Step> )} </Steps> ---- 8.

    2.7K31发布于 2019-08-07
  • 来自专栏Super 前端

    JavaScript组件设计思想(二)

    2016年3月份曾写过一篇文章《JavaScript组件设计思想》其中描述了一些实现组件化的方式,以及降低各组件耦合度的说明。其中“事件机制”不失为好的选择!

    77141发布于 2019-08-15
领券