相关疑难解决方法(0)

Angular - 如何清理普通打字稿类中的样式?

我遇到了这个问题。

WARNING: sanitizing unsafe style value rotate(36.362868584929245deg)translate(91px,67px) (see http://g.co/ng/security#xss).

现在,经过一些研究,我发现我必须DomSanitizer像这样使用应该注入到组件中的元素:

constructor(private sanitizer: DomSanitizer)

我的问题是我需要清理的类是一个简单的打字稿类,它不是一个组件。如何注射消毒剂?或者以其他方式清理此值。

以下是相关代码:

模板:

<div class="transition" *ngFor="let transition of state.transitions"
  [style.transform]="transition.transformPosition"
  [style.width.px]="transition.width"></div>
Run Code Online (Sandbox Code Playgroud)

班级:

export class Transition {
  origin: State;
  destination: State;
  conditions: AlphabetSymbol[];

  constructor(origin: State, destination: State) {
    this.origin = origin;
    this.destination = destination;
  }

  get transformPosition() {
    let x = (this.origin.layoutPosition.x + this.destination.layoutPosition.x) / 2,
        y = (this.origin.layoutPosition.y + this.destination.layoutPosition.y) / 2,
        angle = Math.atan(  (this.destination.layoutPosition.y - this.origin.layoutPosition.y)
                          / (this.destination.layoutPosition.x - this.origin.layoutPosition.x)),
        finalString;

    x -= …
Run Code Online (Sandbox Code Playgroud)

styles sanitize angular

3
推荐指数
1
解决办法
3809
查看次数

标签 统计

angular ×1

sanitize ×1

styles ×1