TypeError:无法读取未定义的“内容”属性

时间:2019-02-12 18:32:49

标签: reactjs react-router

在浏览器中重新加载页面时,React应用程序路由会返回错误。

我的登录页面上有一个博客部分,其中的按钮链接到包含博客文章完整列表的页面,另外一组页面则链接到每个博客条目的完整文章。我正在通过WordPress通过其API引入博客条目,并使用Context管理状态并与我的组件共享数据。我正在使用React Router从登录页面导航到文章列表和每篇完整文章。着陆页上的路线结构:“ / articles /:postId”。

当我按下“阅读更多”按钮时,已经可以显示完整的文章。但是,当我在页面上重新加载带有全文的浏览器时,出现与我的帖子标题匹配的错误。在控制台上,我看到以下错误:

“未捕获的TypeError:无法读取未定义的属性'content'”

“ index.js:1446组件中发生了以上错误:     在文章中(按路线创建)     在路线上(在App.js:19)     在Switch中(在App.js:16)     在提供程序中(在App.js:15)     在路由器中(由BrowserRouter创建)     在BrowserRouter中(在App.js:14)     在App中(位于src“

由于不确定该错误的根源,我没有尝试进行任何修复。我什至无法在浏览器中向后清除它。我必须回到登录页面并重新加载浏览器才能解决问题。

Context.js:

operator <

路由设置:

bool operator < (const A & rhs) const {
    return data < rhs.data;
}

商品组件代码:

const Context = React.createContext();

export class Provider extends Component{
    constructor(){
        super();
        this.state={
            content: ''
        }
    }

    componentDidMount(){
        fetch('url')
        .then(res => res.json())
        .then(data => this.setState({
            content: data
        }));
    }

    render(){
        return(
            <Context.Provider value={this.state}>
                {this.props.children}
            </Context.Provider>
        )
    }
}

export const Consumer = Context.Consumer;

我希望能够重新加载页面而不会出现这些错误。

0 个答案:

没有答案