Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何从URL/API获取base64编码图像(字符串)并显示在ImageField或react admin列表或显示页面上_Reactjs_React Admin - Fatal编程技术网

Reactjs 如何从URL/API获取base64编码图像(字符串)并显示在ImageField或react admin列表或显示页面上

Reactjs 如何从URL/API获取base64编码图像(字符串)并显示在ImageField或react admin列表或显示页面上,reactjs,react-admin,Reactjs,React Admin,我用react Admin(v3.5.2)设计了一个简单的管理应用程序,其中包含大约10个表和API调用。我对大多数菜单使用dataprovider,但不包括一些获取自定义数据的获取调用 其中一个菜单显示产品列表,具有一些标准类别、类型、说明,另一个菜单具有URL图像。这个想法是用图像来展示产品。 然而,我还不能解决这个问题,需要获取存储在S3存储桶上的base64字符串格式的图像,然后将其显示在每个产品旁边的网页上 简单的ImageField无法工作,因为它无法转换为base64图像(我认为)

我用react Admin(v3.5.2)设计了一个简单的管理应用程序,其中包含大约10个表和API调用。我对大多数菜单使用dataprovider,但不包括一些获取自定义数据的获取调用

其中一个菜单显示产品列表,具有一些标准类别、类型、说明,另一个菜单具有URL图像。这个想法是用图像来展示产品。 然而,我还不能解决这个问题,需要获取存储在S3存储桶上的base64字符串格式的图像,然后将其显示在每个产品旁边的网页上

简单的ImageField无法工作,因为它无法转换为base64图像(我认为)。此外,这也没有多大帮助,因为imageUrl实际上是从具有一对多关系的不同表中获取的

我还尝试将它放在SimpleShowLayout内的自定义网格中,但我不确定如何从API获取详细信息。网格的其余部分仅从记录中填充

const Vehiclepartdet = ({ record }) => (
    <span>
        <Grid container>
            <Grid xs={12} sm={2}>
                Make <br /> {record.category}
            </Grid>
            <Grid xs={12} sm={2}>
                Part <br /> {record.desc}
            </Grid>
            <Grid xs={12} sm={2}>
                Image <br /> <img src={"data:image/jpeg;base64," + ImageData} />
            </Grid>
        </Grid>
    </span>
const vehiclelepartdet=({record})=>(
制作
{record.category} 部分
{record.desc} 图像
产品 产品id
产品类别
产品说明

产品形象 图像id
图像1 url
图像2 url
图像3 url
产品id


我对这一切都很陌生-react admin、react JS和所有react,在这一切发生几天之后,希望这个问题有意义!

您必须传递图像字符串来格式化数据:URI

const encoded = "iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAMAAAC6V+0/AAAAwFBMVEXm7NK41k3w8fDv7+q01Tyy0zqv0DeqyjOszDWnxjClxC6iwCu11z6y1DvA2WbY4rCAmSXO3JZDTxOiwC3q7tyryzTs7uSqyi6tzTCmxSukwi9aaxkWGga+3FLv8Ozh6MTT36MrMwywyVBziSC01TbT5ZW9z3Xi6Mq2y2Xu8Oioxy7f572qxzvI33Tb6KvR35ilwTmvykiwzzvV36/G2IPw8O++02+btyepyDKvzzifvSmw0TmtzTbw8PAAAADx8fEC59dUAAAA50lEQVQYV13RaXPCIBAG4FiVqlhyX5o23vfVqUq6mvD//1XZJY5T9xPzzLuwgKXKslQvZSG+6UXgCnFePtBE7e/ivXP/nRvUUl7UqNclvO3rpLqofPDAD8xiu2pOntjamqRy/RqZxs81oeVzwpCwfyA8A+8mLKFku9XfI0YnSKXnSYZ7ahSII+AwrqoMmEFKriAeVrqGM4O4Z+ADZIhjg3R6LtMpWuW0ERs5zunKVHdnnnMLNQqaUS0kyKkjE1aE98b8y9x9JYHH8aZXFMKO6JFMEvhucj3Wj0kY2D92HlHbE/9Vk77mD6srRZqmVEAZAAAAAElFTkSuQmCC";
const Vehiclepartdet = ({ record }) => (
<span>
    <Grid container>
        <Grid xs={12} sm={2}>
            Make <br /> {record.category}
        </Grid>
        <Grid xs={12} sm={2}>
            Part <br /> {record.desc}
        </Grid>
        <Grid xs={12} sm={2}>
            Image <br /> <img src={`data:image/png;base64, ${encoded}`} />
        </Grid>
    </Grid>
</span>
)
const-encoded="2.一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的一个世界级的2级的2级的一个世界级的一个中国政府级的2级的一个中国政府级的2级的一个中国政府级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级的2级13RaxPcibag4FivqlHyx5.vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv",;
常量Vehiclepartdet=({record})=>(
制作
{record.category} 部分
{record.desc} 图像
)