我有以下代码从Window中提取对象并希望在渲染时使用它。
我在控制台中将comeponentData的值设置为undefined。我该如何访问该值?
class MobileBanner extends React.PureComponent {
componentDidMount(){
let banner = window.something.banner
this.setState({
componentData: banner
})
}
render () {
const componentData =
typeof dhome === 'undefined' || isEmpty(dhome)
? 'undefined'
: this.state.componentData
}
}
答案 0 :(得分:1)
您需要在构造函数中设置默认值。
class MobileBanner extends React.PureComponent {
constructor() {
super();
this.state = {
componentData: ''
};
}
componentDidMount(){
let banner = window.something.banner
this.setState({
componentData: banner
})
}
render () {
const componentData =
typeof dhome === 'undefined' || isEmpty(dhome)
? 'undefined'
: this.state.componentData
}
}
详细了解 costructor https://reactjs.org/docs/react-component.html#constructor