私はPrimeNGウィジェットを使ってAngular2で入力フォームを編集ポップアップダイアログを作成したいと思う。私はそのダイアログボックスの動的コンテンツに問題があります(スクリーンショットを参照)。PrimeNG DialogModuleをCalendarModuleでオーバーフローさせよう
私は単純に他の要素の上に配置されているのdivにCalendarModuleをラップしようとしてきました。 (下の角テンプレートHTMLを参照してください)
<p-dialog [(visible)]="display" [modal]="true" [resizable]="false">
...
<table class="ui-datatable-responsive">
<tbody>
<tr>
...
</tr>
<tr>
<td class="ui-cell-data">Start By:</td>
<td class="ui-cell-data">
<div [style]="generateSafeStyle('position:relative; z-index:1000')">
<p-calendar dateFormat="dd.mm.yy" [(ngModel)]="value"></p-calendar>
</div>
</td>
</tr>
</tbody>
...
</table>
</p-dialog>
しかし、DialogModuleはすべてのコンテンツをフレームしているようです。そのフレームをオーバーフローさせるためのハックはありますか?
あなたはそれをどのように扱いますか?
ありがとうございます。
P.S:generateSafeStyle関数は、注入されたDomSanitizerを使用して正常に動作します。
generateSafeStyle(style:string):SafeStyle{
return this.sanitizer.bypassSecurityTrustStyle(style);
}
これはDomSanitizerとまったく同じです。あなたが言うように私がそれを行うならば、それはさらにこの美しい警告を作り出します: "警告:安全でないスタイル値[オブジェクトオブジェクト]を浄化します(http://g.co/ng/security#xss参照)。 – KayleeTheMech
@YvonneReinhardt私はあなたが 'DomSanitizer'を使う必要はないと思います。私が提供したコードをテストしただけで、何の問題も警告もなく動作しています。 –
さて、私はdivを必要としないかもしれませんし、DOMSanitizerもなくても警告は出ません。しかし、これは問題ではありません。なぜなら、CalendarModuleはDialogModuleとその醜いスクロールバーの中にまだフレームされているからです。* grrr *お試しいただきありがとうございます。: – KayleeTheMech