gpt4 book ai didi

javascript - 动态图像路径未显示在 Angular 7 的 [style.background-image] 属性中

转载 作者:太空狗 更新时间:2023-10-29 18:36:03 32 4
gpt4 key购买 nike

我正在尝试在我的 Angular6 项目之一中使用动态图像路径作为背景图像。我试过使用 [style.background-image] & [style.background] 甚至 encodeURI 来修复路径中的空格也尝试使用 *ngIF 以便它在加载后呈现。

案例一:

imgPath 是绝对路径,我将 JSON 数据的路径附加到该路径。

HTML代码

    <a routerLink="/article/{{news.id}}">        
<img [style.background-image]="'url(' + imgPath + news.encodedImage.encocoded_primary_image + ')'">
</a>

组件

使用 encodeURI() 函数检查图像中的空格和其他括号

'encocoded_primary_image': encodeURI(res['primary_image']['file_path'])

输出

Image comparison of article

如图所示“s/Absorica%20(2).png”有方括号,这可能是错误的原因,但不确定。

其他情况

我尝试使用 [style.background][ngStyle] ,将图像标签更改为 div 标签。

但我无法理解为什么很少有图像在渲染,很少有图像没有渲染,尽管路径生成正确,我已通过在新选项卡中打开它们来确认这一点。

任何帮助将不胜感激

最佳答案

  1. background-image: url 中接受字符串。您必须将图像路径添加到字符串中。

"'url(\'' + imgPath + news.encodedImage.encocoded_primary_image + '\')'"

<a routerLink="/article/{{news.id}}">
<img [style.background-image]="'url(\'' + imgPath + news.encodedImage.encocoded_primary_image + '\')'">
</a>

https://developer.mozilla.org/en-US/docs/Web/CSS/background-image

https://www.w3schools.com/csSref/pr_background-image.asp

  1. 尝试使用 escape() 方法,但此方法已被弃用。小心使用。

    https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/escape

关于javascript - 动态图像路径未显示在 Angular 7 的 [style.background-image] 属性中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53810678/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com