Reputation: 115
I just wanna ask how can i access this.state.sampleString from other class.. Here's my code
class MainClass extends Component {
constructor(props){
super(props)
this.state = {
sampleString: 'Test String'
}
this.getValue = this.getValue.bind(this);
}
getValue(){
//console.log(this.state.sampleString);
return this.state.sampleString
}
}
=========
This is my function from My second class to get the value of "this.state. sampleString" from MainClass
function getValueFromMainClass() {
var stringFromClassHeader = () => {HeaderWithBg.getValue()}
console.log(stringFromClassHeader.sampleString);
}
Why it returns "undefined"?
Thanks alot. Im a new in react native.
Upvotes: 2
Views: 8211
Reputation: 3438
You can send the this.state.sampleString
as a prop to other components and use it there. A simple example of this is like below:
class MainClass extends Component {
constructor(props){
super(props)
this.state = {
sampleString: 'Test String'
}
this.getValue = this.getValue.bind(this);
}
getValue(){
//console.log(this.state.sampleString);
return this.state.sampleString
}
render(){
return (
<ChildClass sampleString={this.state.sampleString}/>
)
}
}
class ChildClass extends Component {
somefunction() {
//console.log(this.props.sampleString);
return this.props.sampleString
}
render(){
return ...
}
}
Upvotes: 4