Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript React-如何访问在渲染中componentdidmount中分配的变量_Javascript_Reactjs - Fatal编程技术网

Javascript React-如何访问在渲染中componentdidmount中分配的变量

Javascript React-如何访问在渲染中componentdidmount中分配的变量,javascript,reactjs,Javascript,Reactjs,我有以下代码从窗口拉入一个对象,并希望在渲染时使用它 我在控制台中得到的ComeComponentData的值是未定义的。如何访问该值 class MobileBanner extends React.PureComponent { componentDidMount(){ let banner = window.something.banner this.setState({ componentData: banner }) } render () { const componentD

我有以下代码从窗口拉入一个对象,并希望在渲染时使用它

我在控制台中得到的ComeComponentData的值是未定义的。如何访问该值

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
  }
}

您需要在构造函数中设置默认值

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的更多信息