首页 新闻 会员 周边

angular: 如何实现接收到 postMessage 消息之前一直让页面处于加载状态

0
悬赏园豆:50 [待解决问题]

在园子的博文详情页点击“举报”链接,会创建一个 iframe 加载另外一个域名下的举报页面,然后通过 postMessage 将当前博文信息传递给举报页面,举报页面侦听 onMessage 事件获取博信息,请问如何实现在接收 onMessage 事件之前一直让页面处于正在加载的状态,直到接收到 onMessage 才完成加载?

dudu的主页 dudu | 高人七级 | 园豆:30948
提问于:2023-10-21 21:37
< >
分享
所有回答(2)
0

想到一个简单的解决方法,在收到 message 之前显示 spinner(比如 ngx-spinner),收到 message 后隐藏 spinner,

dudu | 园豆:30948 (高人七级) | 2023-10-22 21:58
0

 体现了下“举报”,发现非常高频的出现标题和链接丢失的问题。这个需要修复下。

 

另外,关于本问题,我理解是想实现等详情页把标题这些发送过去,iframe页面才真正显示出来?如果理解没错的话,其实只要iframe 页面默认打开就是一个 loading 图,等到消息后再显示内容即可。

从体验来讲,其实并不需要做loading,只要确保 postMessage 始终能给到iframe 页面即可。可以考虑iframe页面在x秒没等到 postMessage 的消息时,再主动找详情页拉一下数据,双保险。

幻天芒 | 园豆:37175 (高人七级) | 2023-11-01 22:50
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册