parent
99d1760b98
commit
7347cbaedf
@ -0,0 +1,24 @@ |
||||
<template> |
||||
<transition-group name="fade-transform" mode="out-in"> |
||||
<inner-link |
||||
v-for="(item, index) in iframeViews" |
||||
:key="item.path" |
||||
:iframeId="'iframe' + index" |
||||
v-show="$route.path === item.path" |
||||
:src="item.meta.link" |
||||
></inner-link> |
||||
</transition-group> |
||||
</template> |
||||
|
||||
<script> |
||||
import InnerLink from "../InnerLink/index" |
||||
|
||||
export default { |
||||
components: { InnerLink }, |
||||
computed: { |
||||
iframeViews() { |
||||
return this.$store.state.tagsView.iframeViews |
||||
} |
||||
} |
||||
} |
||||
</script> |
@ -1,27 +1,47 @@ |
||||
<script> |
||||
export default { |
||||
data() { |
||||
return {}; |
||||
}, |
||||
render() { |
||||
const { $route: { meta: { link } }, } = this; |
||||
if ({ link }.link === "") { |
||||
return "404"; |
||||
} |
||||
let url = { link }.link; |
||||
const height = document.documentElement.clientHeight - 94.5 + "px"; |
||||
const style = { height: height }; |
||||
|
||||
return ( |
||||
<div style={style}> |
||||
<template> |
||||
<div :style="'height:' + height" v-loading="loading" element-loading-text="正在加载页面,请稍候!"> |
||||
<iframe |
||||
src={url} |
||||
frameborder="no" |
||||
:id="iframeId" |
||||
style="width: 100%; height: 100%" |
||||
scrolling="auto" |
||||
:src="src" |
||||
frameborder="no" |
||||
></iframe> |
||||
</div> |
||||
); |
||||
</template> |
||||
|
||||
<script> |
||||
export default { |
||||
props: { |
||||
src: { |
||||
type: String, |
||||
default: "/" |
||||
}, |
||||
iframeId: { |
||||
type: String |
||||
} |
||||
}, |
||||
data() { |
||||
return { |
||||
loading: false, |
||||
height: document.documentElement.clientHeight - 94.5 + "px;" |
||||
}; |
||||
}, |
||||
mounted() { |
||||
var _this = this; |
||||
const iframeId = ("#" + this.iframeId).replace(/\//g, "\\/"); |
||||
const iframe = document.querySelector(iframeId); |
||||
// iframe页面loading控制 |
||||
if (iframe.attachEvent) { |
||||
this.loading = true; |
||||
iframe.attachEvent("onload", function () { |
||||
_this.loading = false; |
||||
}); |
||||
} else { |
||||
this.loading = true; |
||||
iframe.onload = function () { |
||||
_this.loading = false; |
||||
}; |
||||
} |
||||
} |
||||
}; |
||||
</script> |
||||
|
Loading…
Reference in new issue