为了账号安全,请及时绑定邮箱和手机立即绑定

Uncaught (in promise) TypeError: Cannot read property 'pagecontent' of null(…),这个问题怎么解决啊

/ 猿问

Uncaught (in promise) TypeError: Cannot read property 'pagecontent' of null(…),这个问题怎么解决啊

qq_没有蜡笔的小新_5 2018-04-19 14:40:16

import React from 'react';

import {Row,Col} from 'antd';


export default class PCNewsDetails extends React.Component{

  constructor(){

    super();

    this.state={

      newsItem: ''

    };

  };

    componentDidMount(){

      var myFetchOptions={

        method:'GET'

      };

      fetch("http://newsapi.gugujiankong.com/Handler.ashx?action=getnewsitem&uniquekey="+this.props.params.uniquekey,myFetchOptions)

      .then(response=>response.json())

      .then(json=>{

        this.setState({newsItem:json});

        document.title=this.state.newsItem.title+" - React News | React 驱动的新闻平台";

      })

    };

    createMarkup(){

      return {__html:this.state.newsItem.pagecontent};

    };

  render(){

    return(

      <div>

          <Row>

            <Col span={2}></Col>

            <Col span={14} className="container">

              <div class="articleContainer" dangerouslySetInnerHTML={this.createMarkup()}></div>

            </Col>

            <Col span={6}></Col>

            <Col span={2}></Col>

          </Row>

      </div>

    );

  };

}


查看完整描述

3 回答

?
回眸一笑仙魔震

断点看下项目里的

fetch("http://newsapi.gugujiankong.com/Handler.ashx?action=getnewsitem&uniquekey="+this.props.params.uniquekey,myFetchOptions)

      .then(response=>response.json())

      .then(json=>{

        this.setState({newsItem:json});

这个接口返回后处理得到的json是不是为空

查看完整回答
反对 回复 2018-04-19
?
zzZerOrz

Cannot read property 'pagecontent' of null这句话的意思是调用pagecontent这个属性的变量是null,也就是空的,根据你这句__html:this.state.newsItem.pagecontent,所以说this.state.newsItem = null了

查看完整回答
反对 回复 2018-04-19
?
牛奶老哥哥

没有pagecontent这个属性, 代码写错了啊,代码都没有你想怎么解决

查看完整回答
反对 回复 2018-04-19
  • qq_没有蜡笔的小新_5
    qq_没有蜡笔的小新_5
    import React from 'react'; import {Row,Col} from 'antd'; export default class PCNewsDetails extends React.Component{ constructor(){ super(); this.state={ newsItem: '' }; }; componentDidMount(){ var myFetchOptions={ method:'GET' }; fetch("http://newsapi.gugujiankong.com/Handler.ashx?action=getnewsitem&uniquekey="+this.props.params.uniquekey,myFetchOptions) .then(response=>response.json()) .then(json=>{ this.setState({newsItem:json}); document.title=this.state.newsItem.title+" - React News | React 驱动的新闻平台"; }) }; createMarkup(){ return {__html:this.state.newsItem.pagecontent}; }; render(){ return( <div> <Row> <Col span={2}></Col> <Col span={14} className="container"> <div class="articleContainer" dangerouslySetInnerHTML={this.createMarkup()}></div> </Col> <Col span={6}></Col> <Col span={2}></Col> </Row> </div> ); }; }
  • qq_没有蜡笔的小新_5
    qq_没有蜡笔的小新_5
    代码我给填上了,你看看能解决吗?
  • 牛奶老哥哥
    牛奶老哥哥
    判断this.state.newsItem有值再执行this.createMarkup()
点击展开后面1

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信