setState
setState
在同步模块里面是异步的,想在语句后面直接拿最新的数据是拿不到的
setState
在异步模块里面是同步的。
组件传值
父传子
跟vue
一样直接写在标签上
类组件拿值
在render
函数中用this.props
拿值,所有父亲传过来的值,都在props
里面
属性验证
导包
import propsType from 'prop-types'
static propTypes = {
}
默认值
static defaultProps = {
}
函数式组件拿值
import React from 'react'
import propsType from 'prop-types'
export default function Cf(props) {
console.log(props)
return (
<div></div>
)
}
// 默认值
Cf.defaultProps = {
title: 'C'
}
// 校验
Cf.propTypes = {
title: propsType.string
}
修改props
1.子组件是不能直接修改父组件传过来的值的但是引用类型是可以修改的。
2.父传子的属性改变了,render
函数会重新执行,视图得以更新
无状态组件
子组件没有state
有状态组件
子组件有state