初见react

react

定义:

1.适用于构建用户界面的库

与react其他状态库一起构建框架

react 、react-dom、radus、webpack、babel等。

react 特点

1.声明式编程

不管过程、只看结果

2.组件化开发

前端的一种趋势,将复杂的页面的模块封装成一个个组件

3.虚拟dom

虚拟dom通过js代码阿里描述一段HTML代码(虚拟dom可以理解为json对象)

为啥需要引用虚拟dom

真实dom节点属性和方法过于复杂,操作时影响浏览器性能,所以使用object来描述页面中的html结构,以达到性能提升的效果。

vue 和 react 之间的虚拟dom区别

vue的虚拟dom是通过telemplate 模版进行编译形成的虚拟dom,而react没有telemplate模版,react通过的是jsx语法来对模版进行编译,最后形成虚拟dom

4.单向数据流

vue和react之间的区别

vue不同组件中,强制使用单项数据流

单向数据流

定义:父组件数据可以传递给子组件,但子组件不能直接修改父组件状态

react 的单项数据流,数据的流向只能通过props由外到内一层层传递

5.双向数据绑定

vue和react之间的区别

vue的双向数据绑定设计模式是mvvm

mvvm是一种设计模式

其中 m 对应的是 数据模型 model , v对应的是 视图层 view 。

他们之间需要一个人去监听两者的改变,一者改变就去修改另一者 这个人就是 vm

react 没有提供v-model这样的指令来实现文本框的双向数据绑定,单向数据流的react没有vm对象,他有的是属性和状态,用属性和状态去映射视图。

react手动实现双向数据绑定。

react不是mvvm , 而是mvc=>v

相关推荐
前端极客探险家1 小时前
Flutter vs React Native:跨平台移动开发框架对比
flutter·react native·react.js
大莲芒2 小时前
react 15-16-17-18各版本的核心区别、底层原理及演进逻辑的深度解析--react17
前端·react.js·前端框架
木木黄木木4 小时前
html5炫酷3D文字效果项目开发实践
前端·3d·html5
Li_Ning215 小时前
【接口重复请求】axios通过AbortController解决页面切换过快,接口重复请求问题
前端
胡八一5 小时前
Window调试 ios 的 Safari 浏览器
前端·ios·safari
Dontla5 小时前
前端页面鼠标移动监控(鼠标运动、鼠标监控)鼠标节流处理、throttle、限制触发频率(setTimeout、clearInterval)
前端·javascript
再学一点就睡6 小时前
深拷贝与浅拷贝:代码世界里的永恒与瞬间
前端·javascript
CrimsonHu6 小时前
B站首页的 Banner 这么好看,我用原生 JS + 三大框架统统给你复刻一遍!
前端·javascript·css
Enti7c6 小时前
前端表单输入框验证
前端·javascript·jquery
拉不动的猪6 小时前
几种比较实用的指令举例
前端·javascript·面试