初见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

相关推荐
Profile排查笔记44 分钟前
指纹浏览器环境异常排查:Fingerprint、Profile、Proxy、Session 和 Task Log 怎么看
前端·人工智能·后端·自动化
京韵养生记1 小时前
【无标题】
java·服务器·前端
大气的小蜜蜂1 小时前
领域层的服务
java·前端·数据库
星栈2 小时前
LiveView 的 LiveComponent:比 React 组件更轻,但我一开始真的把它用错了
前端·前端框架·elixir
林希_Rachel_傻希希2 小时前
web性能优化之延迟加载图片和<inframe>
前端·javascript·面试
maxmaxma2 小时前
Konva 从入门到实践 - day1
前端
火星校尉2 小时前
一场数据基建与消费场景的跨界实验
java·前端·数据库·python·php
W是笔名2 小时前
python_let`s try it 6___BMI计算器
java·前端·python
risc1234562 小时前
Lucene80DocValuesConsumer 五种类型源码阅读顺序
java·服务器·前端
小米渣的逆袭2 小时前
Chrome Extension Script World(ISOLATED / MAIN)原理与适用场景
前端·javascript·chrome