当我需要静态图像时,尽管它只是一个数字,但仍被视为ReactNode:
const image = require('Image01.png');
console.log(image); // return 1
console.log(typeof image); // returns number
如果我认为这是子组件的items数组中的一项,并使用prop-types包进行检查,则它是有效的:
import PropTypes from 'prop-types';
....
static propTypes = {
items: PropTypes.arrayOf(PropTypes.node).isRequired,
};
现在,我想使用动态图像(相机中的uri ..)并将其传递给我,就像第一个传递的那样:
let result = await ImagePicker.launchCameraAsync();
if (!result.cancelled) {
const image = {uri: result.uri};
}
尽管图像按预期显示在子组件中,但我得到警告
Warning: Failed prop type: Invalid prop 'items[0]'
那么如何使该对象成为ReactNode? p>