react
阿拉斯加的头头儿
这个作者很懒,什么都没留下…
展开
-
模拟实现useState的实现原理
具体来说,当组件第一次渲染时,React Hook 会创建一个内部的状态变量,并将其存储在当前组件的内存中。同时,由于状态变量是通过闭包保护起来的,因此也可以避免一些常见的状态管理问题,比如因为异步操作导致的数据竞争或者卡顿等问题。实际上,我们可以借助 React 中的 useState Hook 的原理,通过闭包和函数式编程的思想来手动实现一个 useState 函数。众所周知,react 函数式组件是一个纯函数,那么他就不应该会缓存数据,但是我们的state却能将数据保留,为何?原创 2023-04-26 21:56:41 · 142 阅读 · 1 评论 -
create-react-app 配置src绝对路径
记录一下,功能不多,够用即可原创 2021-12-08 14:58:07 · 572 阅读 · 0 评论 -
react Props不允许直接修改
react官方文档中说道,组件无论是使用函数声明还是通过class声明,都绝不能修改自身的props,props 作为组件对外通信的一个接口,为了保证组件像纯函数一样没有响应的副作用,所有的组件都必须像纯函数一样保护它们的props不被修改...原创 2021-11-30 10:07:52 · 1489 阅读 · 1 评论 -
Capture Value 特性学习
import React, { useRef } from "react";import ReactDOM from "react-dom";function MessageThread() { const latestMessage = useRef(""); const showMessage = () => { alert("You said: " + latestMessage.current); }; const handleSendClick = () =>原创 2021-08-12 10:34:14 · 502 阅读 · 0 评论 -
setState问题
setState()constructor(){this.state = {count:1}}componentDidMount(){this.setState({count:1})}render(){return()}this.setState({count:1}) 哪怕count的值不发生改变,依旧会触发render()函数的执行。也就是说 setState会触发子组件的重新计算vdom,但是不一定会重新更新dom...原创 2021-08-11 09:05:54 · 115 阅读 · 0 评论 -
react生命周期学习
react生命周期图谱详细可以参照这个:reatc生命周期图谱下述生命周期方法即将过时,在新代码中应该避免使用它们:UNSAFE_componentWillMount()UNSAFE_componentWillUpdate()UNSAFE_componentWillReceiveProps()挂载阶段(mounting)constructor()可以不写constructor,一旦写了constructor,就必须在此函数中写super()可以为事件处理函数绑定实例只会执行一次,而且发原创 2021-08-10 10:29:22 · 80 阅读 · 0 评论