React和Vue都是优秀的前端开发框架,Vue相对来讲官方文档更清晰,易学习上手,很多后端开发者在有前端需求的情况下会优先选择使用Vue来解决问题。
我之前一直使用Vue做前端需求,由于最近重构系统改用了React,所以开始学习,在学习的过程中总结了个重点问题:
React如何实现一个组件?React如何管理状态(变量)?Reac如何使用生命周期的钩子函数?React组件之间如何实现通讯?解决这个问题后,就可以开始上手React相关需求开发了,同时我觉得从React向Vue过渡的话,也一样适用。1、React如何实现一个组件?React中有两种组件,分别是:函数组件和类组件,在下面的代码示例中会分别演示两种组件的写法。其中,
函数组件必须有返回值,且返回值为html代码、封装组件等可渲染的内容;类组件必须实现render()方法,且render()方法需要返回一个可渲染的内容2、React如何管理状态(变量)?对于需要更新变化的变量,React没有Vue的数据双向绑定,不能通过直接赋值的方式改变状态,而是需要调用相应的set方法来更新。
在函数组件中,通过useState()方法来定义状态及其set方法,使用语法为:const[状态名,对应set方法名(可选)]=useState(非必填的初始化值)在类组件中,状态的定义统一放在名为state的对象中,状态的更新统一调用setState()方法,传参为要更新的状态信息、React如何使用生命周期的钩子函数?这里以常用的挂载和销毁两个钩子函数为例,类似对应于Vue中的mount()和destory()阶段。
在函数组件中,通过useEffect方法模拟钩子函数,它的第一个参数是一个函数,函数体(除return部分外)为挂载/更新时可进行的操作,函数体的返回值可返回一个销毁时的操作方法,它的第二个参数可以控制函数的调用,暂时不详述;在类组件中,有专门的钩子函数