I'm assigning values inside my componentWillMount
like shown in below
componentWillMount() {
/*this.props.fetchMetaData(this.props.url);*/
axios.get(`https://api.microlink.io/?url=${this.props.url}`)
.then(res => {
this.metaData = res;
console.log("99999999999 ", this.metaData.data.data);
this.image = this.metaData.data.data.image.url;
this.title = this.metaData.data.data.title;
this.description = this.metaData.data.data.description;
this.metaurl = this.metaData.data.data.url;
console.log("title ", this.title);
});
}
And i'm trying to show the values inside my render()
as follows.
render() {
console.log("title ", this.title);
return (
<div>
<a className="previewUrlContainer float_left unchange_div border"
href={metaurl}
target="_blank">
<img className="previewImage margin_bottom10px" src={this.image}></img>
<div className="margin_bottom10px font_bold">{this.title}</div>
<div className="margin_bottom10px medium_font">{this.description}</div>
<div className="margin_bottom10px small_font">{this.metaurl}</div>
</a>
</div>
);
}
But I get undefined values even though I've checked all the values inside componentWillMount
. How can i use the values inside componentWillMount
within render()
.