I want to dynamically load external JS files depending on a condition I get by http call to a service.
I want to insert <script>
into app.component.html
as:
<script src="mysource/url"></script>
In my component I used bypassSecurityTrustScript
and bypassSecurityTrustHtml
neither works for me, my script tags get removed:
<div class='container-fluid'>
<div class='row'>
<div class='col-sm-12 body-content'>
<div [innerHTML]="script"></div>
<script type="text/javascript" [src] = "src"></script>
<router-outlet></router-outlet>
</div>
</div>
</div>
@Component({
selector: 'app',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
public script: any;
public src: any;
public constructor(private titleService: Title, private sanitizer: DomSanitizer) {
let x = '<script>alert("hi")</script>';
this.script = sanitizer.bypassSecurityTrustHtml(x);
this.src = sanitizer.bypassSecurityTrustScript('http://www.google.com');
}
Any idea how can I use DomSanitizer
class in this context?