API平台/管理员:如何使用自定义src渲染ImageField?

时间:2018-11-07 16:29:01

标签: admin react-admin api-platform.com

我想使用API​​平台的管理方式向媒体注入完整路径 following this doc

无法生成完整路径URI,请尝试以下操作:

 field.field = props => (
                        <ImageField source="contentUrl"  {...props} >
                            <FunctionField render={ render => {
                                console.log(render)
                                return `${process.env.REACT_APP_API_ENTRYPOINT}/media/${render.contentUrl}`
                            }}  />
                        </ImageField>
                    );

来自:this stack

我得到以下结果:

<img src="[object Object]" class="ImageField-image-274">

我的src必须是:

http://localhost:8080/media/myFile.jpg

来自我的api:

contentUrl = myFile.jpg

我需要与process.env.REACT_APP_API_ENTRYPOINT保持联系

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

您是在启动Webpack开发服务器之前还是在构建项目之前设置了变量?

export REACT_APP_API_ENTRYPOINT=http://localhost/....
npm start 

答案 1 :(得分:0)

您可以像这样使用FunctionField

<FunctionField
      label="Image"
      render={(record: any) => {
        return (
          <img
            src={`${process.env.REACT_APP_API_ENTRYPOINT}/media/${record.contentUrl}`}
          />
        );
      }}
    />