Angular bypassSecurityTrustResourceUrl, говорящий, что любой аргумент не определен - PullRequest
0 голосов
/ 04 января 2019

Я пытаюсь санировать URL, используя bypassSecurityTrustResourceUrl. Однако, независимо от того, какое значение я положил в аргумент, я всегда получаю

Невозможно прочитать свойство bypassSecurityTrustResourceUrl из неопределенного

return this.sanitizer.bypassSecurityTrustResourceUrl('http://www.google.com');

Возвращает:

ОШИБКА TypeError: Невозможно прочитать свойство bypassSecurityTrustResourceUrl из неопределенного в UrlSanitizerService.push../src/app/services/urlsanitizer.service.ts.UrlSanitizerService.sanitizeURL

Везде, где я смотрю, написано, что это должно санировать URL и позволять отображать его через iframe. Возможно, я неправильно понимаю, что добавить в качестве аргумента. Любая помощь будет оценена, спасибо!

Ответы [ 2 ]

0 голосов
/ 04 января 2019

Обновление: я разобрался с проблемой. Я не уверен, почему это так, но когда я переместил дезинфицирующее средство из службы в мой app.component, все работало нормально.

0 голосов
/ 04 января 2019

Эта ошибка не о том, что вы передаете в качестве аргумента, а о дезинфицирующем средстве.

Вы должны убедиться, что импортировали и объявляли дезинфицирующее средство в своем конструкторе следующим образом:

import { DomSanitizer} from '@angular/platform-browser';

...

constructor(private sanitizer:DomSanitizer) {    }
...