Angular 7+:将静态 html 文件注入组件视图中间

2024-01-04

我无法找到将文件中的静态 html 注入视图中间的最佳方法。我有一个名为 eula-dialog 的组件,其中该组件尚未执行任何操作,但视图如下所示: eula-dialog.component.html

<h1 md-dialog-title>Sign EULA</h1>
<mat-dialog-content>

  <!-- HOW TO INJECT A FILE HERE -->
  <div> REPLACE ME WITH CONTENTS OF FILE</div>


</mat-dialog-content>
<mat-dialog-actions>
  <mat-checkbox [(ngModel)]="agreeCheckbox">I have read and agree to the eula</mat-checkbox>
  <button md-raised-button color="primary" mat-dialog-close [disabled]="!agreeCheckbox">
    I Agree
  </button>
</mat-dialog-actions>

我有一个如下所示的文件夹结构:

eula-dialog
    eula-dialog.component.html
    eula-dialog.component.scss
    eula-dialog.component.spec.ts
    eula-dialog.component.ts
    very-long-readonly-eula-template.html

我无法修改 eula HTML 的内容,它主要包含文本和一些 html 元素,但不是完整的页面,它看起来像这样:

<p>Title</p>
<div> LOTS OF TEXT </div>

最好的方法是什么? 此外,最好不要始终随应用程序加载此 eula html 文件/模板,而仅在需要时发送到客户端。


将静态文件放在 asset 文件夹中,否则告诉 Angular 将其标记为 angular.json 中的 asset。

然后使用

<h1 md-dialog-title>Sign EULA</h1>
<mat-dialog-content>

  <!-- HOW TO INJECT A FILE HERE -->
  <div [innerHTML]="eulaContent">...</div>


</mat-dialog-content>
<mat-dialog-actions>
  <mat-checkbox [(ngModel)]="agreeCheckbox">I have read and agree to the eula</mat-checkbox>
  <button md-raised-button color="primary" mat-dialog-close [disabled]="!agreeCheckbox">
    I Agree
  </button>
</mat-dialog-actions>
// In .ts file
import { DomSanitizer} from '@angular/platform-browser';

eulaContent = '';

constructor(private sanitizer: DomSanitizer)

ngOnInit(){
  fetch('/assets/yourlocation.html').then(res => res.text()).then(data => {
    this.eulaContent = this.sanitizer.bypassSecurityTrustHtml(data);
  })
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Angular 7+:将静态 html 文件注入组件视图中间 的相关文章

  • Android:Html 锚链接仅在 Web 视图中有效一次

    在使用锚链接加载 html 内容时 我在 webview 中遇到一些奇怪的问题 以下代码非常适合锚标记 但是只有一次 第二次当我按下锚标签时不工作 protected void onCreate Bundle savedInstanceSt
  • html2canvas z-index 不起作用

    我正在使用 html2canvas 库将 div 转换为 png 我有一个关于z index 正如你在图片上看到的 我有盒子 在一个盒子里我有一个用于背景着色的 div z index 0 它随着高度值和数字的 div z index 1
  • 带有蓝图 css 的 HTML5 样板

    我正在考虑将这两种技术结合起来用于一个新项目 这是坏主意吗 有没有推荐的替代网格系统与 html5 样板一起使用 实际上 我将它们混合在一起并且它们一起工作得很好 http shikiryu com html5 我所要做的就是修改 div
  • 推迟内联 JavaScript 执行? [复制]

    这个问题在这里已经有答案了 在我的网站中 我有许多内联 JavaScript 片段 其中大多数都需要 jquery 和类似的东西 但我想将 jquery 加载推迟到页面渲染之后 这意味着 我的内联 javascript 将在加载 jquer
  • 两个 div 之间的垂直线间隔

    所以我有两个div 一个左侧 div 包含导航链接 另一个右侧 div 填充内容 具体取决于您在左侧单击的链接 我希望在导航和内容之间有一条垂直的灰线将两者分开 但我需要它根据右侧内容 div 的长度来改变高度 如果右侧没有导航那么长 则默
  • 当虚拟键盘出现时,三星 Android 上的 Html 输入失去焦点

    我在使用 html5 Web 应用程序的 Samsung Galaxy Tab A Android 7 0 上遇到输入元素失去焦点的问题 这似乎是android中的一个问题 就像在windows 10或iOS上一样 尽管弹出虚拟键盘时也会触
  • rc1 路由器“没有路由器提供商”

    这是 Shuhei 帮助我解决 config js 问题后出现的错误的后续帖子Angular 2 RC路由器Angular2 polyfills js 349错误 https stackoverflow com questions 3708
  • 如何使CSS背景图像响应? [复制]

    这个问题在这里已经有答案了 好的 所以我遇到了这个使背景图像响应的解决方案 响应式 CSS 背景图片 https stackoverflow com questions 12609110 responsive css background
  • Angular2 - 如何最好地处理过期的身份验证令牌?

    我正在使用 Angular 2 1 2 我有一个身份验证令牌 使用 angular2 jwt 如果它过期 我的 webApi 调用就会失败并出现 401 错误 我正在寻找一种用户不会丢失任何输入数据的解决方案 我可以捕捉到这个 401 并通
  • Jquery - 如何替换div中的一个单词?

    我有一个从其他位置复制的 div 我需要更改其中的一个单词 这是 HTML div class dealer addy 8726 N Royal Ln br Irving TX 75063 br email protected cdn cg
  • 使用 div 代替 table 进行布局

    我想知道什么方法最好将表格布局替换为 div 我自己也尝试过一些 但它让我的 4x4 div 非常混乱 我猜当有经验做这样的事情时 这并不是很难完成 但我对 div 都是新手 并试图学习这一点 看看这个并分享您对表格是否应该保持原样或者是否
  • 范围滑块 javascript 以小时和分钟为单位

    我试图分别以小时和分钟为单位显示滑块的值 我对 JS 还很陌生 并且仍在尝试了解它是如何工作的 到目前为止 我所拥有的是一个工作滑块 其最大值为 1440 24 小时内的分钟 在 JS 中 我尝试将其划分为小时和分钟 并使用 innerHt
  • NgRx 更新对象数组中对象的属性

    我的商店里目前有一系列物品 我想在给定传入对象的情况下更新该对象的单个属性 State export interface ApplicationState allNavGroups INavGroup null Reducer on App
  • Angular2从模块导入组件/服务

    我正在开发一个 Angular2 最终应用程序 它 当前 有两个模块 CoreModule 包含共享组件 服务 AppModule 应用程序的根模块 应用程序模块 Created by jamdahl on 9 21 16 Angular
  • 重复背景图像被切断

    我有一个容器 DIV 它随着内容的高度而缩放 它有一个背景图像 可以重复向下形成图案 问题是重复的背景图像在 div 底部被切断 有没有办法让背景图像不被切断 这是代码 http jsfiddle net WkEKD 7 http jsfi
  • 在没有 Flash 的情况下用 HTML / js 录制音频?

    从麦克风录制音频并将 ajax 发回服务器 真的不知道如何在 Flash 中做到这一点 并希望它保持简单 目前还没有浏览器实现WHATWG 设备 API http www whatwg org specs web apps current
  • 我们可以为 border-bottom 属性设置渐变颜色吗? [复制]

    这个问题在这里已经有答案了 我们可以添加渐变颜色吗border bottomhtml块元素的属性 边框应该与此类似 谁能告诉我这在 CSS3 中是可能的吗 我像这样尝试过 但无法让它工作 border gradient border bot
  • onclick链接/按钮获取数据属性值

    span class btn btn block btn inverse btn icon glyphicons home i i Daily span span class btn btn block btn inverse btn ic
  • Azure 和 NX,运行管道时出错:npm:另一个进程(ID 为 4224)当前正在运行 ngcc

    我正在尝试使用 Azure 运行管道 在构建时失败并出现以下错误 当我运行nx affected target build base origin master prod parallel本地命令 我也有Another process 消息
  • 将画布下载为 PNG 图像[重复]

    这个问题在这里已经有答案了 当我尝试将画布下载为 PNG 图像时 浏览器会在新页面中打开该图像 但不下载它 我的下载代码 btnScaricaEtichetta click function console log Download loc

随机推荐