如何在一个组件中定义 属性 并传递给 reactJs 中的其他组件?
How to define property in one component and pass to other component in reactJs?
I have a parent component and a child component, I want to pass
property from Parent to Child by using {...this.props}, I dont want
any action or reducer in the picture,Is it possible to do this?
我的Child组件是这样的:-
import React, { Component } from 'react'
import ReactDOM from 'react-dom'
class SampleChild extends Component {
constructor(props) {
super(props)
}
render(){
return(
<div>This is Parent</div>
)
}
}
SampleChild.propTypes={
Header:React.PropTypes.string.isRequired
}
export default SampleChild
我的Parent组件是这样的:-
import React, { Component } from 'react'
import ReactDOM from 'react-dom'
class SampleParent extends Component {
constructor(props) {
super(props)
}
render(){
return(
<div><SampleChild {...this.props}/></div>
)
}
}
export default SampleParent
现在如何将示例Parent组件中的Header属性传递给示例Child?请帮助我。
<SampleParent Header="Hello from Parent" />
会为你解决这个问题,因为你正在将所有来自 SampleParent
的道具传播到 SampleChild
你需要确保 SampleParent
只是将它作为道具接收,如果它是动态的。
如果它是静态属性,您可以在 defaultProps
中为 SampleParent
定义它,您将始终传递相同的字符串。
SampleParent.defaultProps = {
Header: 'Hello from Parent'
}
如果您只是想将 "all" 属性从 parent 传递给 child,您可以这样做。
从渲染 SampleParent 的组件...
<SampleParent />
SampleParent 组件:
import React, { Component } from 'react'
import ReactDOM from 'react-dom'
import SampleChild from './SampleChild';
class SampleParent extends Component {
render() {
return(
<div>
<SampleChild {...this.props} />
</div>
)
}
}
SampleParent.defaultProps = {
Header: "Header from parent"
}
export default SampleParent;
SampleChild 组件:
import React, { Component } from 'react'
import ReactDOM from 'react-dom'
class SampleChild extends Component {
render() {
return(
<div>
<div>This is the Header passed from parent:</div>
{this.props.Header}
</div>
)
}
}
SampleChild.propTypes = {
Header: React.PropTypes.string.isRequired
}
export default SampleChild;
I have a parent component and a child component, I want to pass property from Parent to Child by using {...this.props}, I dont want any action or reducer in the picture,Is it possible to do this?
我的Child组件是这样的:-
import React, { Component } from 'react'
import ReactDOM from 'react-dom'
class SampleChild extends Component {
constructor(props) {
super(props)
}
render(){
return(
<div>This is Parent</div>
)
}
}
SampleChild.propTypes={
Header:React.PropTypes.string.isRequired
}
export default SampleChild
我的Parent组件是这样的:-
import React, { Component } from 'react'
import ReactDOM from 'react-dom'
class SampleParent extends Component {
constructor(props) {
super(props)
}
render(){
return(
<div><SampleChild {...this.props}/></div>
)
}
}
export default SampleParent
现在如何将示例Parent组件中的Header属性传递给示例Child?请帮助我。
<SampleParent Header="Hello from Parent" />
会为你解决这个问题,因为你正在将所有来自 SampleParent
的道具传播到 SampleChild
你需要确保 SampleParent
只是将它作为道具接收,如果它是动态的。
如果它是静态属性,您可以在 defaultProps
中为 SampleParent
定义它,您将始终传递相同的字符串。
SampleParent.defaultProps = {
Header: 'Hello from Parent'
}
如果您只是想将 "all" 属性从 parent 传递给 child,您可以这样做。
从渲染 SampleParent 的组件...
<SampleParent />
SampleParent 组件:
import React, { Component } from 'react'
import ReactDOM from 'react-dom'
import SampleChild from './SampleChild';
class SampleParent extends Component {
render() {
return(
<div>
<SampleChild {...this.props} />
</div>
)
}
}
SampleParent.defaultProps = {
Header: "Header from parent"
}
export default SampleParent;
SampleChild 组件:
import React, { Component } from 'react'
import ReactDOM from 'react-dom'
class SampleChild extends Component {
render() {
return(
<div>
<div>This is the Header passed from parent:</div>
{this.props.Header}
</div>
)
}
}
SampleChild.propTypes = {
Header: React.PropTypes.string.isRequired
}
export default SampleChild;