html - Angular 4 : Setting img src base href inside of innerHTML

标签 html angular innerhtml

在我的 Angular 4 应用程序中,我使用 innerHTML 来显示 HTML 格式的练习描述。

<li *ngFor="let exercise of exercises">
  <div [innerHTML]="exercise.longDescription"></div>
</li>

这些描述也可以包含图片

<img src="/file/na\6ad7k4ynon6yh2qcibcdqxwcey.jpg">

这就是我苦苦挣扎的地方,因为我需要将这些图像的基本 href 设置为我的后端所在的 localhost:8080。 Angular 试图从标准的 localhost:4200 (ng serve) 获取它们,所以我得到了 errors .

知道怎么做吗?

最佳答案

找到了一个解决方案,不确定是否是最干净的,但它完成了工作。

我在练习模型中创建了一个函数,将 environment.URL 添加到 src(对于开发是 localhost:8080,对于生产是服务器的 API)。

public getHTML () {
    return this.longDescription.replace(/<img src="([^"]+)">/, '<img src="'+environment.URL+'$1">');
  }

我这样访问它

<div [innerHTML]="exercise.getHTML()"></div>

相反。

环境常量看起来像这样:

export const environment = {
  production: false,
  URL: 'http://localhost:8080'
};

关于html - Angular 4 : Setting img src base href inside of innerHTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44244807/

相关文章:

javascript - 使用 jquery 向下滚动后表未固定在顶部

angular - 条件扩展可观察链

angular - ionic 列表 vs ionic 滚动 vs ionic 3 中的 virtualScroll

angular - 哪种形式类型选择模型驱动或模板驱动形式?

javascript - 不使用innerHTML获取innerHTML

javascript - 获取嵌套在div中的span内的数字

html - 不要在背景图像的 div 中显示文本

html - 让网站不再跳转到页面顶部

javascript - 如何以纯文本形式获取带有innerHTML的div内容,然后将其下载为txt文件?

html - 稍微偏离中心的按钮