1.重新Render的条件 ①state,props的变化,当父组件变化时子组件也会跟着变化,子组件不修改父组件给过来的属性。如何想变化要在子组件中定义一个OBJ对象,因为父组件的this.props.xxx是不能变化,但是this.props.obj.xxx是可以变化的。
2.dva高阶组件如何访问AAA中的方法,例:export default connect(null,null,null,{withRef:true})(AAA),用以上这样的方法可以在父组件中访问到AAA组件对象,从而可以访问到AAA组件中的任何方法,属性。例:
import React, { Component } from ‘react’
class Parent extends Component {
constructor(props) {
super(props)
//父组件定义一个ref在Son中定义
this.getList = React.createRef()
}
componentDidMount(){
//可以用这样的方法来访问子组件DX
console.log(this.getList.current.getWrappedInstance())
}
render() {
return (
<div className='add-pro-picture'> <Son ref={this.getList} /></div>
)
}
}
import React, { Component } from ‘react’
import {connent} from ‘dva’
class Son extends Component {
render() {
return (
)
}
}
export default connent(null,null,null,{withRef:tuer})(Son)
3.可以在同步的node方法加上try…catch…来处理错误。
4.Axios的post方法的第二个参数一定要记着是一个对象。
5.当把更新和增加组件放在一起时,可以把父组件传过来的state初始化到state里面,这样可以保证默认状态和修改状态。