首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >React警告:构造期间未正确初始化状态

React警告:构造期间未正确初始化状态
EN

Stack Overflow用户
提问于 2018-04-20 19:30:51
回答 1查看 1.9K关注 0票数 1

我使用来自react 16.3的getDerivedStateFromProps。为什么react会显示此警告?

Did not properly initialize state during construction. Expected state to be an object, but it was undefined.

codepen上的演示

代码语言:javascript
复制
class TestComponent extends React.PureComponent {
    static getDerivedStateFromProps(nextProps) {
        const {record,} = nextProps;

        return {
            title: record ? record.title : '',
        };
    }


    render() {
        const {title} = this.state;

        return (
            <div>{title}</div>
        );
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-20 19:34:43

可以,您需要设置状态的初始值:

代码语言:javascript
复制
class TestComponent extends React.PureComponent {
  constructor(props) {
   super(props);
   this.state = {
    title: ''
   };
 }
// rest of your code

或者,使用ES7 syntax:(如果您正在使用create-react-app创建应用程序,则将支持此功能)

代码语言:javascript
复制
class TestComponent extends React.PureComponent {
  state = {
   title: ''
  }
// rest of your code

你可能会对medium上的这篇blog感兴趣。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49940677

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档