问题标签 [angular-dom-sanitizer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
14238 浏览

angular - Angular 6 清理本地驱动器 url

我尝试使用 DomSanitizer 方法来清理以下类型的 url,但没有成功

有没有办法清理这个 url 以用作 href 值?

此外,我用 [] 表示法绑定了该值,因此我确定它不会被插入为字符串。

0 投票
1 回答
966 浏览

javascript - iframe加载无限角度2

我正在尝试在 Angular 2 项目中创建非常简单的 iframe。 代码

如果我在 iframe src 中使用原始 url,则会出现错误unsafe value used in a resource URL context

如果我DomSanitizer.bypassSecurityTrustResourceUrl用于 url sanitize,它可以工作,但 iframe 加载无限时间,奇怪的嗯。代码(检查控制台)

所以,我已经为下面的 url 创建了管道,它可以正常工作

safe-url.pipe.ts

HTML 视图

现在,我有问题

  • 为什么unsafe value used in a resource URL context纯html iframe工作的角度错误

  • 为什么DomSanitizer.bypassSecurityTrustResourceUrl导致 iframe 无限加载但pipe功能不同

0 投票
1 回答
1982 浏览

angular - 如何将 DomSanitizer 作为打字稿中的参数传递给管道?

我正在使用管道显示具有以下代码的羽毛图标:

如您所见,它使用了 DomSanitizer。我像这样在 HTML 中使用管道:

它工作正常。但现在我需要通过打字稿做同样的事情。我试过 :

但它会引发错误:

预期 1 个参数,但得到 0.ts(2554) feather-pipe.ts(9, 15):未提供“消毒剂”的参数。

然后我尝试了

但是管道输出:

无法读取未定义的属性“bypassSecurityTrustHtml”。

如何使用打字稿设置带有管道的innerHTML?

0 投票
2 回答
4907 浏览

angular - Angular bypassSecurityTrustResourceUrl 说任何参数都是未定义的

我正在尝试使用bypassSecurityTrustResourceUrl. 但是,无论我在论点中提出什么价值,我总是得到

无法读取bypassSecurityTrustResourceUrl未定义的属性

回报:

错误类型错误:无法读取bypassSecurityTrustResourceUrl未定义的属性UrlSanitizerService.push../src/app/services/urlsanitizer.service.ts.UrlSanitizerService.sanitizeURL

我看过的所有地方都说这应该清理一个 url 并允许它通过 iframe 显示。我可能误解了争论的内容。任何帮助将不胜感激,谢谢!

0 投票
0 回答
161 浏览

angular - 在没有 sharedModule 的多个模块中使用自定义管道

是否可以在惰性模块中使用CustomPipe而无需使用公共或共享模块。我不想为每个模块编写管道。

下面是我的 CustomPipe.ts

先感谢您

0 投票
0 回答
138 浏览

angular - 角度 innerHTML 不显示像'

需要一些有关角度 innerHTML 和将 json 数据从服务器写入 HTML 的帮助。

我有带有字符串的json,例如:

我正在尝试使用 HTML,例如:

并有一个像这样的管道:

这个技巧确实像:

'分机;]'

我怎样才能从 json 获得完整的安全字符串并用 HTML 编写它


请注意,fmincom这不一定给出精确的解决方案,而是根据特定标准对解决方案的良好近似。

结果的差异是合理的,因为fmincon它是一种迭代算法,并且这些矩阵乘法(即使主要有零)最终将以不同的结果结束。Matlab 实际上会做这些矩阵乘法,直到他找到最好的结果。所以这些结果都是正确的,因为它们都接近解决方案。

1.0e-07考虑到您没有指定停止标准,结果的差异在于哪个是体面的结果。您可以使用命令查看默认情况下拥有的内容

我的结果是

例如,我可以使用以下选项获得更接近的结果:

结果是

您也可以尝试使用其他标准MaxFunctionEvaluationsMaxFunctionEvaluations,看看您是否可以获得更接近的结果......

0 投票
0 回答
410 浏览

angular - 使用 Angular DomSanitizer 清理 html

我正在使用 Angular 7,但我遇到了消毒系统的问题。

我正在尝试使用该innerHtml指令在我的页面中插入一些 Html 代码。此代码可以包含 html 和样式属性。

不使用this._sanitizer.bypassSecurityTrustHtml(myCssHtmlCode),样式属性将被删除。

当我使用它时,不会删除 javascript 代码。

我正在寻找的是一种保持样式和 html 但删除 javascript 代码的方法。

像下面的代码这样的东西是完美的,但不存在。

domSanitzer.sanitize([SecurityContext.HTML, SecurityContext.STYLE], myCssHtmlCode)

还有其他方法可以组合 SecurityContext 类型吗?

谢谢!

0 投票
2 回答
578 浏览

html - Angular dom sanitize 无法正常工作

我使用 angular dom sanitizer 从文本区域获取 html。它在渲染整个项目后第一次完美运行,但在重新访问组件后第二次我收到此消息:

SafeValue 必须使用 [property]=binding: My text(参见http://g.co/ng/security#xss)。

我已经使用 inner-html 属性通过属性绑定传递了内容

我期待我的纯文本,但我得到了上面描述的输出。

0 投票
2 回答
577 浏览

angular - 在 Angular 7 中可以使用什么来代替 $sce?

我们在 Angular 1 中使用 $sce 来显示这样的 html 标签

以用户可读的形式。什么是 Angular 7 中相同的替代品。任何人都可以回答这个问题以及如何在 Angular 7 中使用它。在网上搜索后,我发现 DomSanitizer .. 无法准确地使用它。

0 投票
2 回答
1004 浏览

angular - 在 HTML 字符串中传递角度 routerLink URL 的最佳方法

我的 Angular 应用程序中有一个通知服务,通常你称之为

我也希望能够在消息中传递应用程序链接,并且我知道我需要允许SafeHtml输入,如下所示:

在我的服务中,这就是我所做的:

然后我像这样展示它:


所以……为了解决这个问题!这只是在某种程度上起作用,因为 HTML 得到了,但显然它没有被 angular 解析以使其具有routerLink功能。到浏览器的实际 HTML 输出是:

但是,它不可点击,因为实际上由 angular 解析的链接会输出以下 HTML:

我怎样才能让这些链接正常工作?

我是否以正确的方式解决这个问题?