我是靠谱客的博主 儒雅树叶,最近开发中收集的这篇文章主要介绍2022/3/3,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

终于知道为什么能减少虚拟dom会减少回流和重绘了,因为它是在js上进行操作的。
想一下添加一百个按钮,添加一个页面就重绘一次,那是很难看的,但是如果是用虚拟dom,就是增加一百个后
再重绘,性能很好。
这里有具体的解释。https://www.cnblogs.com/ShuiNian/p/12914085.html

虚拟dom和真实dom,尽量不要用真实dom,也就是document.getElementsById,因为这样性能不高。
同时,通过ref属性获得的节点也是真实dom
https://www.jianshu.com/p/805658f403c3

ReactDom.render的第二个参数一定是获取dom节点。如:document.getElementsById
ReactDom.render的第一个参数可以是一个html,也可以是一个组件。
可以通过属性传参给组件,组件通过props获取。比如,this.props.name。name是属性名
this.props.children:组件的子节点,按照个数分为undefined,object,array

React相对简单,记住:“函数入口是props,出口是html”
就是类的render的return部分是html,看demo09:
file:///C:/Users/www/Downloads/react-demos-master/react-demos-master/demo09/index.html

react的this.props和vue的组件的props区别在于:vue的是可以改变的,react是一旦定义就不再改变的
由于 this.props 和 this.state 都用于描述组件的特性,可能会产生混淆。
一个简单的区分方法是,this.props 表示那些一旦定义,就不再改变的特性,
而 this.state 是会随着用户互动而产生变化的特性。

class LikeButton extends React.Component
LikeButton 一个组件类,可以设置初始状态和末尾状态。

有个博主讲了虚拟dom,现在我已经懂是啥了:https://www.jianshu.com/p/5154ff12b4ce
当然也知道了虚拟dom是用js写的,不过这个教程用的jsx写的。
知道虚拟dom长什么样子很重要啊,因为比如我们的class={ xx:xx}平时在写组件属性变量的时候为什么那样写
然后它的原理就是这个:
let virtualDOM = {
type:‘ul’,
props:{
‘class’:‘list’
},
children:[
{
type:‘li’,
props:{},
children:[
‘item 1’
]
},
{
type:‘li’,
props:{},
children:[
‘item 2’
]
}
]
}

这个虚拟dom就是让我们知道type代表什么,props代表啥,children为什么代表子节点。
以及他们的写法为啥是长那样的。
比如之前的样式绑定

class是属性。 activated是取值。
就是拆分就是
然后 activated:isActivated
还是有点混乱。但是起码知道props代表属性就行。

关于剩余函数:function h(type,props,…children){
return {type,props,children}
}

在h函数中,除了前两个参数以外,其他所有参数都会被放到一个名为children的数组中。(注意,是被放到
数组中,这样就刚好符合虚拟dom的写法了)

当然通过这个也知道了剩余函数的应用~

发现一个好博主了:https://www.jianshu.com/u/a1671f59cf54

记住这个:null == null 是 true,NaN == NaN是false,所以如果一个数自己不等于自己,那它一定是NaN.
这是一个能够深度判断两个变量是否相等的工具函数:
https://www.jianshu.com/p/5980f81aef9a

关于react的类和钩子写法区别比较:https://www.ruanyifeng.com/blog/2020/09/react-hooks-useeffect-tutorial.html
这里说一下,hook,也就是钩子,他其实就是函数啊。
function Welcome(props){
return < h1>hello,{props.name} < / h1>
除了钩子以外还讲了什么是副效应,useEffect的第二个参数是引起副效应的依赖项。我感觉很像watch监听函数。

最后

以上就是儒雅树叶为你收集整理的2022/3/3的全部内容,希望文章能够帮你解决2022/3/3所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(62)

评论列表共有 0 条评论

立即
投稿
返回
顶部