vue iframe 另1个vue打包文件页面,但加载的时候需要等很长时间,怎么可以获取另1个vue页面加载完了?
应该怎么做?
vue iframe 另1个vue打包文件页面,但加载的时候需要等很长时间,怎么可以获取另1个vue页面加载完了?
应该怎么做?
可以通过监听iframe的加载事件来判断另一个vue页面是否加载完成。具体的做法是,在父页面中,给iframe元素添加一个load事件的监听器,当iframe页面加载完成时触发该事件,然后执行相应的操作。示例代码如下:
<template>
<div>
<iframe ref="myIframe" src="另一个vue打包文件页面的url" @load="frameLoad"></iframe>
</div>
</template>
<script>
export default {
methods: {
frameLoad() {
// 执行当iframe页面加载完成后的操作
console.log("另一个vue页面加载完成");
// 其他操作...
},
},
};
</script>
在以上代码中,通过给iframe元素添加了@load="frameLoad"事件监听,当iframe页面加载完成后,会触发frameLoad方法,然后你就可以在该方法中执行相应的操作,比如控制页面显示、更新数据等。
注意:需要将"另一个vue打包文件页面的url"替换为实际的URL。
<iframe frameborder="0" :src="REDRICT_PATH" @load="handlerLoad"></iframe>
<div class="loading-box" v-show="showLoading">
<img :src="Loading">
</div>
// showLoading: true
如图搞定,
让 loading 浮在 iframe 上面,
或者设置 css 做背景图,
onload 之后取消就好了,
9 回答1.6k 阅读✓ 已解决
6 回答907 阅读
3 回答1.3k 阅读✓ 已解决
4 回答917 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
3 回答830 阅读
3 回答1.3k 阅读✓ 已解决
我的解决方法:
第1步:
如果第1步已经获取内页的内容后(也就是iframe.onload时),外层的Loading已经关闭了。
第2步:
iframe内页的加载,是由内页的接口和代码判断是否显示或关闭 内页的loading,
思路是2层loading,外层和内页各1个。