React API和 几类组件

225 阅读4分钟

由「R函数组件」没有render props所想到的

V是什么,有怎样的计算功能,有什么种类,React提供什么样API工具,是一篇基础的文章,固化学到的技术。 V代码模板(R函数,R组件类,甚至是更高级的复用模式,像render props)与 逻辑上的V 是不同的

认识V的形式和结构原理,React的V基类API,是一个好实例;有了V理论,反过来也会更好认识React本身的设计。

V或Vx 是一个 混合的DOM封装对象 V的具体交互功能种类是很多的,但它提供的交互功能“强度”只有几大类 第一,只有交互输出,静态; 第二,有交互输出,也有输出,但无记忆智能; 第三,三个都有; 第四,上面三是V,Vx则由一个以上V复合(例如有多个交互输入输出——多个事件处理函数);

R元素 、函数、 组件类(React 工具API)

三者都是制作出 R元素 用来渲染到VDOM上 「交互组件」 然,他们却是用来制作 三不同种类V 或交互组件 的 React API R元素 制作只有辅助交互的V R函数 制作 通用V模板,但没有智能状态:R函数是R组件的一个特殊,直接方便的制作没有状态智能的V实例 R hook函数对象 一种轻便的R组件类实例 2020-08-14 R组件类 制作 通用V模板,有交互处理,有状态 R组件类的生命事件勾子(lifecycle methods.)是制作动态V的重要API

R元素

V与程序计算对象

1程序由计算对象组成 程序功能达到一定规模,需划出不同专业的计算对象 划定 独立计算对象,它专业完成一个功能 独立 计算对象 有计算输入,输出,和对环境的依赖 计算对象 还会有 构建的过程

2专业计算对象与OO构造术

V 与SPA

3V与SPA 完整的SPA至少由R A V 专业计算对象组成,还可能会有M NET等 V是一种WGP(SPA)结构中专业的计算对象 React 只是负责实现SPA中的 V 专业计算对象 views组件实现了WGP的GUI质性 web界面程序静态形式属性:和CLI程序比(GUI),和桌面富应用比(WEB)

4V的形式属性 V指具 此类功能的 计算对象 V与一般的中间对象不同,像M,它可能会有多个执行点,多个计算任务(事件处理程序)集于一身 V 通过DOM进行计算输出,也从中接受计算输入的执行的触发 V 与浏览器DOM高度依赖 V 是一个操作DOM,监听DOM事件的特殊对象 Vx就是一个集合一个以上 V (操作DOM的)混合对象 V的“型”就是 WEB GUI :表现在,第一操作DOM;第二,监听DOM对象事件;

V 有1个以上的计算输出(操作DOM),0个以上的输入(监听浏览器交互事件),对 浏览器和JS环境有不同程度的依赖 只有静态呈现的UI就是只有一个输出,不需要输入 V 与M等中间有一个重要的区别,是它有1个以上的执行点(由交互事件触发),所以是一个混合多个计算任务的混合对象 V 是一个操作DOM,监听DOM事件的特殊对象 DOM操作,与事件监听API都是浏览器提供的特殊API

EM:编程就是制作计算对象 ,那React作为工具如何帮助我们制作V 混合型对象?

5 V与Vx 多个V组件复合制作一个交互故事,和V组件的形式理论是不矛盾的 单一V组件 可以是 丰富UI和多路交互复合的,将不相关的交互 分立,和对相似交互 抽象出来,都是「工程」思想——分而治之,复用提高维护性。 用多个V 组合成一个Vx,需要 一种新的专业

V与React

6 V与VV React的 View组件是“阉割”过,不完整的,它不直接与DOM联系,是 虚拟的V对象