这是我参与「第五届青训营 」伴学笔记创作活动的第 12 天
NPM和Yarn对比
React关于 this.props.children 总结
this.props.children 的值有三种可能:
如果当前组件没有子节点,它就是 undefined ;
如果有一个子节点,数据类型是 Object;
如果有多个子节点,数据类型就是 Array。
组件动态添加className
1.在react中想要动态添加className时,通常会使用classnames这个库。
2.我们可以通过npm安装:npm install classnames
使用方法
1.引入classnames:
import classnames from classnames。
2.classnames是一个函数,使用的形式较多,记住常用的使用方法即可:
(1)传入一个对象:classnames({class1:true,class2:false}) ,true表示相应的class生效,反之false表示不生效。
(2)接受多个类名:classnames(class1,class2,{ class3:false })
react-transition-group动画组件
首先要做的事情就是安装 npm i react-transition-group --save
最常用的是CSSTransition,它提供了与css相关的变化,它提供了一些属性供我们使用:
(1) in 传入boolean值,传入的是true代表开启 enter enter-active和enter-done的这一变化过程,传入false代码开启 exit exit-active exit-done这一过程 (必传)
(2) timeout 表示执行时间,enter-active到enter-done 或者 exit-active到exit-done的执行时间 (必传)
(3) classNames 定义添加的类名,这里定义的类名会被添加到 enter-xxx 及 exit-xxx 的之前
(4) ummountOnExit 默认为false,表示当传入in的值为false值,CSSTransition中的元素不从dom中移除,传true时则会被移除