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

相关推荐
孤水寒月3 小时前
基于HTML的悬窗可拖动记事本
前端·css·html
祝余呀3 小时前
html初学者第一天
前端·html
耶啵奶膘5 小时前
uniapp+firstUI——上传视频组件fui-upload-video
前端·javascript·uni-app
视频砖家6 小时前
移动端Html5播放器按钮变小的问题解决方法
前端·javascript·viewport功能
lyj1689976 小时前
vue-i18n+vscode+vue 多语言使用
前端·vue.js·vscode
小白变怪兽8 小时前
一、react18+项目初始化(vite)
前端·react.js
ai小鬼头8 小时前
AIStarter如何快速部署Stable Diffusion?**新手也能轻松上手的AI绘图
前端·后端·github
墨菲安全9 小时前
NPM组件 betsson 等窃取主机敏感信息
前端·npm·node.js·软件供应链安全·主机信息窃取·npm组件投毒
GISer_Jing9 小时前
Monorepo+Pnpm+Turborepo
前端·javascript·ecmascript
天涯学馆9 小时前
前端开发也能用 WebAssembly?这些场景超实用!
前端·javascript·面试