66 lines
1.9 KiB
Java
66 lines
1.9 KiB
Java
<template>
|
|
|
|
<iframe :id="id" :src="url" frameborder="0" width="100%" height="800px" scrolling="auto"></iframe>
|
|
|
|
</template>
|
|
|
|
<script>
|
|
import Vue from 'vue'
|
|
import { ACCESS_TOKEN } from '@/store/mutation-types'
|
|
// import PageLayout from '../page/PageLayout'
|
|
// import RouteView from './RouteView'
|
|
|
|
export default {
|
|
name: 'IframePageContent',
|
|
inject: ['closeCurrent'],
|
|
data () {
|
|
return {
|
|
url: '',
|
|
id: ''
|
|
}
|
|
},
|
|
created () {
|
|
this.goUrl()
|
|
},
|
|
updated () {
|
|
this.goUrl()
|
|
},
|
|
watch: {
|
|
$route (/* to, from */) {
|
|
this.goUrl()
|
|
}
|
|
},
|
|
methods: {
|
|
goUrl () {
|
|
const url = this.$route.meta.url
|
|
this.id = this.$route.path
|
|
// url = "http://www.baidu.com"
|
|
console.log('------url------' + url)
|
|
if (url !== null && url !== undefined) {
|
|
// -----------------------------------------------------------------------------------------
|
|
// url支持通过 ${token}方式传递当前登录TOKEN
|
|
// eslint-disable-next-line no-template-curly-in-string
|
|
const tokenStr = '${token}'
|
|
if (url.indexOf(tokenStr) !== -1) {
|
|
const token = Vue.ls.get(ACCESS_TOKEN)
|
|
this.url = url.replace(tokenStr, token)
|
|
} else {
|
|
this.url = url
|
|
}
|
|
// -----------------------------------------------------------------------------------------
|
|
|
|
/* update_begin author:wuxianquan date:20190908 for:判断打开方式,新窗口打开时this.$route.meta.internalOrExternal==true */
|
|
if (this.$route.meta.internalOrExternal !== undefined && this.$route.meta.internalOrExternal === true) {
|
|
this.closeCurrent()
|
|
window.open(this.url)
|
|
}
|
|
/* update_end author:wuxianquan date:20190908 for:判断打开方式,新窗口打开时this.$route.meta.internalOrExternal==true */
|
|
}
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style>
|
|
</style>
|