React Native:将对象转换为ReactNode

时间:2018-12-07 23:25:40

标签: reactjs react-native ecmascript-6 expo

当我需要静态图像时,尽管它只是一个数字,但仍被视为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?

0 个答案:

没有答案