我对道具类型有疑问。出现警告消息,指出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中
答案 0 :(得分:2)
react children props不是一个函数,它是一个对象。
尝试:孩子:PropTypes.element.isRequired