Angular 4 - 无法"嵌入"一个Flash .swf文件

时间:2017-07-17 03:59:32

标签: html angular flash

我有一个非常简单的AnimationComponent,其唯一的任务是显示一个.swf文件,作为输入提供。 HTML模板如下:

<embed [src]="url" width="400" height="300" />

组件代码如下:

import { Component, Input, OnInit } from '@angular/core';
import { DomSanitizer, SafeResourceUrl, SafeUrl } from '@angular/platform-browser';

@Component({
    selector: 'animation',
    templateUrl: './animation.component.html'
})

export class AnimationComponent implements OnInit {
    @Input()
    private code: string = '';
    private url: SafeResourceUrl;

    constructor(private sanitizer: DomSanitizer) { }

ngOnInit() {
    let url = `/assets/SWF/${this.code}`;
    this.url = this.sanitizer.bypassSecurityTrustResourceUrl(url);
    }
}

当输入参数代码设置为&#34; Blob.swf时,浏览器中生成的代码如下:

<embed height="300" width="400" src="/assets/SWF/Blob.swf">

但是会显示一个空框,不存在动画。但这就是它变得奇怪的地方。如果我将HTML模板更改为:

<embed height="300" width="400" src="/assets/SWF/Blob.swf">
精明的读者将会看到的

与最初生成的代码完全相同,动画显示的完全符合预期。

任何人都可以想到为什么生成的代码完全按照预期的方式无法工作,但是当src被硬编码时它可以工作吗?

0 个答案:

没有答案