父组件向子组件通信
-
父组件向子组件传值
通过props传递 在父组件中name='我是父组件向子组件传递的参数'
在子组件中通过this.props.name获取
-
父组件向子组件传递方法
与传递参数方法相同,通过props方法这样传递test={this.onParentClick1}
在子组件中触发这个方法this.props.test();
子组件向父组件通信
-
子组件向父组件传值
在子组件state中定义一个参数this.state = {name : '我是子组件向父组件传递的参数' };
在父组件中给子组件绑定ref,如 <Childern ref='childern' />
在父组件中获取子组件的state,如this.refs.childern.state.name
-
子组件向父组件传递方法
同样通过ref来获得,前两部与传参方法相同。
获取方法的方式也同样this.refs.childern.onChildenCilck2();
- 非父子组件之间的传值
组件之间无关联的形式与子组件向父组件传值的方式相同
通过ref给组件标记一个名字,同样通过this.refs.***.state/function方法相互调用。
网友评论