为什么React会说“无效的prop'children'类型是对象不起作用?

时间:2019-05-24 10:46:55

标签: javascript reactjs next

我对道具类型有疑问。出现警告消息,指出children是对象而不是函数。

但是当我更改对象的值时,npm Lint会出现问题。

哪个不能是对象类型?

如何避免这个问题?

组件代码:

import propTypes from 'prop-types';
import * as React from 'react';

export default function layout({ children, title }) {
  return (
    <div className="root">

      <h2>{title}</h2>

      {children}

    </div>
  );
}

layout.propTypes = {
  children: propTypes.func.isRequired,
  title: propTypes.string.isRequired
};

警告消息:

  

警告:道具类型失败:提供给children的类型object的道具layout无效,预期function。       在布局中       在索引中       在容器中       在应用程式中       在Context.Provider中       在Context.Provider中       在Context.Provider中       在Context.Provider中

1 个答案:

答案 0 :(得分:2)

react children props不是一个函数,它是一个对象。

尝试:孩子:PropTypes.element.isRequired