尝试从Umbraco中提取图像并使用React显示它。
我可以通过这样做来拉动所有文本 - 例如 -
{String(this.props.data['carouselUnderImageText'])}
{String(this.props.data['carouselLink'])}
但在做图像时 -
<img src={this.props.data["carouselImage"]}
或<img src={String(this.props.data["carouselImage"])} />
这两个将无法正常工作,它似乎返回我的网址umb://media/8990dd19cfb746e0bea4baec5df20d01
关于如何解决这个问题的任何想法?在使用Umbraco和React时,我没有找到足够的文档来解决这个问题。
如果还有什么我可以展示以帮助回答这个问题,只需将其放在评论中,我将更新问题。
提前谢谢了。
您可以使用Umbraco Helper中的TypedMedia函数获取图像文件的IPublishedContent,然后您可以访问要传递的图像URL进行响应。
var umbracoHelper = new UmbracoHelper(UmbracoContext.Current);
Udi.TryParse(carouselImage, out var carouselImageUdi); // this parses the umb://media string into a UDI to be used in TypedMedia.
var imageUrl = umbracoHelper.TypedMedia(carouselImageUdi).Url;