我知道您可以执行以下操作:
sqflite
但是如何给import React from "react";
import PropTypes from "prop-types";
const Header = ({ name }) => <div>hi {name}</div>;
Header.propTypes = {
name: PropTypes.string
};
export default Header
分配匿名导出的默认函数(propTypes
),如下所示:
export default () =>{}
编辑:我尝试过:
export default ({ name }) => <div>hi {name}</div>;
//how do I do this part/ is it possible?
?.propTypes = {
name: PropTypes.string
};
和:
export default ({ name }) => (<div>
// ----- here ------- (makes sense why, it doesn't work)
static propTypes = {
name: PropTypes.string
}
// ---------------
{name}
</div>);
以这种方式导出,我认为这是不可能的,只是总体上尝试过的尝试之一。
答案 0 :(得分:8)
执行此操作的理智方法是将函数分配给变量:
const anon = ({ name }) => <div>hi {name}</div>;
anon.propTypes = {
name: PropTypes.string
};
export default anon;
如果您真的相信自己有理由不这样做,Object.assign
又如何呢?
export default Object.assign(
({ name }) => <div>hi {name}</div>,
{ propTypes: { name: PropTypes.string } }
);
答案 1 :(得分:-2)
了解如何执行以下操作:
require('./Header').default.propTypes = {
name: PropTypes.string
};
Header
是导出的文件。
此方法有任何缺点(是否会将同一文件加载回内存?)?从未在野外看到这种模式吗?那可能是一个很好的原因,因为我正在重新导入它。