davidjbradshaw iframe resizer:如何从Angular 9调用iframe页面方法

davidjbradshaw iframe resizer:如何从Angular 9调用iframe页面方法,angular,iframe-resizer,Angular,Iframe Resizer,我在iframe内运行Angular 9 SPA,并使用davidjbradshaw iframe resizer动态调整iframe大小以适应角度页面,这样用户就不会看到iframe内的滚动条 在超过视口高度的角度页面上,ngb模式弹出窗口通常显示在视口外部。然后,用户必须滚动父页面才能找到弹出窗口。为简单起见,我希望在IFramed页面顶部附近显示弹出窗口,并将父页面滚动到顶部,以便它始终可见 如果试图直接从IFramed页面滚动父页面,则会出现跨域脚本冲突。davidjbradshaw i

我在iframe内运行Angular 9 SPA,并使用davidjbradshaw iframe resizer动态调整iframe大小以适应角度页面,这样用户就不会看到iframe内的滚动条

在超过视口高度的角度页面上,ngb模式弹出窗口通常显示在视口外部。然后,用户必须滚动父页面才能找到弹出窗口。为简单起见,我希望在IFramed页面顶部附近显示弹出窗口,并将父页面滚动到顶部,以便它始终可见

如果试图直接从IFramed页面滚动父页面,则会出现跨域脚本冲突。davidjbradshaw iframe resizer提供了使用类似于调整iframe大小的方法来规避此类冲突的能力。在他的中,Damon提供了一种将父页面滚动到顶部的方法,如下所示:

if ('parentIFrame' in window) {
    parentIFrame.scrollTo(0, 0);
}
运行时('parentIFrame'在窗口中)条件为正。因此全局变量parentIFrame必须存在。但是在TypeScript中parentIFrame引用是未定义的,我不知道如何从Angular 9内部获取句柄,以便它可以传输

if ('parentIFrame' in window) {
    const parentIFrame = window["parentIFrame"];
    parentIFrame.scrollTo(0, 0);
 }