有趣的iframe问题
今天遇到一个问题,当点击了按钮----跳转页面时----F12键点击网络中的状态报了已取消,类型是
document说明是前端页面的问题,如果是xhr那可能是接口的问题。
原本是写了3个iframe,页面刷新的时候请求了第一个iframe,然后就经过vue的那一层又重新请求了一遍,所以就有了报错
原来代码如下:
<div id="app"><el-tabs><div slot="label" @click="handleClick("tab1")" ><i class="el-icon-date"></i>张三</div><div v-if="tab=='tab1'"><iframe id="userzhangsan" height="750" width="100%" frameborder="0" src="../hahah"></iframe></div></el-tabs><el-tabs><div slot="label" @click="handleClick("tab2")" ><i class="el-icon-date"></i>李四</div><div v-if="tab=='tab1'"><iframe id="userlishe" height="750" width="100%" frameborder="0" src="../hahah"></iframe></div></el-tabs><el-tabs><div slot="label" @click="handleClick("tab2")" ><i class="el-icon-date"></i>王五</div><div v-if="tab=='tab1'"><iframe id="userwangwu" height="750" width="100%" frameborder="0" src="../hahah"></iframe></div></el-tabs>
<div>
解决方案就是写个for循环就行
<div id="app" class="app-content" v-cloak><el-tabs type="border-card" :lazy="true"><el-tab-pane v-for="(tabItem, index) in tabs" :key="index"><div :slot="'label'" @click="handleClick(tabItem.name)"><i :class="tabItem.icon"></i> {{ tabItem.label }}</div><div v-if="tab === tabItem.name"><iframe :id="tabItem.iframeId" :height="tabItem.height" :width="tabItem.width" frameborder="0" :src="tabItem.src"></iframe></div></el-tab-pane></el-tabs> </div>
这里补充一下:还有其它情况的请点击链接:前端页面被取消的重复请求 - 掘金