我想在我的ionic2应用程序中嵌入Youtube视频我使用过Youtube管道并导入以下内容:
MethodSignature methodSig = (MethodSignature) joinpoint.getSignature();
Annotation[][] annotations = methodSig.getMethod().getParameterAnnotations();
if (annotations != null) {
for (Annotation[] annotArr : annotations) {
for (Annotation annot : annotArr) {
if (annot instanceof KeyAnnotation) {
System.out.println(((KeyAnnotation) annot).value());
}
}
}
}
youtube.ts包含以下
import { DomSanitizer } from '@angular/platform-browser';
我也在app.module.ts中导入了它,如下所示:
constructor(private dom: DomSanitizer) {
}
transform(value, args) {
return this.dom.bypassSecurityTrustResourceUrl(value);
}
}
在我的.html文件中,我写了这个:
import { BrowserModule } from '@angular/platform-browser';
import { ErrorHandler, NgModule } from '@angular/core';
import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular';
import { MyApp } from './app.component';
...
import{ YoutubePipe } from '../pipes/youtube/youtube';
import { StatusBar } from '@ionic-native/status-bar';
import { SplashScreen } from '@ionic-native/splash-screen';
@NgModule({
declarations: [
MyApp,
HomePage,
...
YoutubePipe
],
它在输出屏幕上给我这样的信息:
不能GET /uri.vurl%20%7C%20youtube
我应该做什么,请帮助。
答案 0 :(得分:0)
首先,您需要在 .ts 文件中导入 DomSanitizer ,如下所示:
import { DomSanitizer } from '@angular/platform-browser';
接下来,在构造函数中声明一个变量
constructor(..., private sanitizer: DomSanitizer) {}
如果您要显示一个已经拥有uri的视频,您可以声明一个实例变量并传入uri,如下所示:
this.videoUrl = this.sanitizer.bypassSecurityTrustResourceUrl("https://....")
现在,在 .html 文件中,执行以下操作:
<iframe [src]="videoUrl" frameborder="0" width="100%" height="155" allowfullscreen></iframe>
希望这有帮助。