1 |
- {"remainingRequest":"D:\\cloud\\cemp\\cemp-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\cloud\\cemp\\cemp-ui\\src\\components\\iframe\\main.vue?vue&type=style&index=0&lang=scss&","dependencies":[{"path":"D:\\cloud\\cemp\\cemp-ui\\src\\components\\iframe\\main.vue","mtime":1619070292868},{"path":"D:\\cloud\\cemp\\cemp-ui\\node_modules\\css-loader\\index.js","mtime":499162500000},{"path":"D:\\cloud\\cemp\\cemp-ui\\node_modules\\vue-loader\\lib\\loaders\\stylePostLoader.js","mtime":499162500000},{"path":"D:\\cloud\\cemp\\cemp-ui\\node_modules\\postcss-loader\\src\\index.js","mtime":499162500000},{"path":"D:\\cloud\\cemp\\cemp-ui\\node_modules\\sass-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\cloud\\cemp\\cemp-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\cloud\\cemp\\cemp-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\n.iframe {\r\n width: 100%;\r\n height: 100%;\r\n border: 0;\r\n overflow: hidden;\r\n box-sizing: border-box;\r\n}\r\n",{"version":3,"sources":["main.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyHA;AACA;AACA;AACA;AACA;AACA;AACA","file":"main.vue","sourceRoot":"src/components/iframe","sourcesContent":["<template>\r\n <div>\r\n <basic-container>\r\n <iframe v-if=\"$route.query.src\"\r\n :src='$route.query.src'\r\n class=\"iframe\"\r\n ref=\"iframe\"></iframe>\r\n <iframe v-else\r\n :src=\"urlPath\"\r\n class=\"iframe\"\r\n ref=\"iframe\"></iframe>\r\n </basic-container>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { mapGetters } from 'vuex'\r\nimport NProgress from 'nprogress' // progress bar\r\nimport 'nprogress/nprogress.css' // progress bar style\r\nexport default {\r\n name: 'AvueIframe',\r\n data () {\r\n return {\r\n urlPath: this.getUrlPath() //iframe src 路径\r\n }\r\n },\r\n created () {\r\n NProgress.configure({ showSpinner: false })\r\n },\r\n mounted () {\r\n this.load()\r\n this.resize()\r\n },\r\n props: ['routerPath'],\r\n watch: {\r\n $route: function () {\r\n this.load()\r\n },\r\n routerPath: function () {\r\n // 监听routerPath变化,改变src路径\r\n this.urlPath = this.getUrlPath()\r\n }\r\n },\r\n components: {\r\n ...mapGetters(['screen']),\r\n },\r\n methods: {\r\n // 显示等待框\r\n show () {\r\n NProgress.start()\r\n },\r\n // 隐藏等待狂\r\n hide () {\r\n NProgress.done()\r\n },\r\n // 加载浏览器窗口变化自适应\r\n resize () {\r\n window.onresize = () => {\r\n this.iframeInit()\r\n }\r\n },\r\n // 加载组件\r\n load () {\r\n this.show()\r\n var flag = true //URL是否包含问号\r\n if (this.$route.query.src.indexOf('?') == -1) {\r\n flag = false\r\n }\r\n var list = []\r\n for (var key in this.$route.query) {\r\n if (key != 'src' && key != 'name') {\r\n list.push(`${key}= this.$route.query[key]`)\r\n }\r\n }\r\n list = list.join('&').toString()\r\n if (flag) {\r\n this.$route.query.src = `${this.$route.query.src}${\r\n list.length > 0 ? `&list` : ''\r\n }`\r\n } else {\r\n this.$route.query.src = `${this.$route.query.src}${\r\n list.length > 0 ? `?list` : ''\r\n }`\r\n }\r\n //超时5s自动隐藏等待框,加强用户体验\r\n let time = 5\r\n const timeFunc = setInterval(() => {\r\n time--\r\n if (time == 0) {\r\n this.hide()\r\n clearInterval(timeFunc)\r\n }\r\n }, 1000)\r\n this.iframeInit()\r\n },\r\n //iframe窗口初始化\r\n iframeInit () {\r\n const iframe = this.$refs.iframe\r\n const clientHeight = document.documentElement.clientHeight - (screen > 1 ? 200 : 130);\r\n iframe.style.height = `${clientHeight}px`\r\n if (iframe.attachEvent) {\r\n iframe.attachEvent('onload', () => {\r\n this.hide()\r\n })\r\n } else {\r\n iframe.onload = () => {\r\n this.hide()\r\n }\r\n }\r\n },\r\n getUrlPath: function () {\r\n //获取 iframe src 路径\r\n let url = window.location.href\r\n url = url.replace('/myiframe', '')\r\n return url\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\">\r\n.iframe {\r\n width: 100%;\r\n height: 100%;\r\n border: 0;\r\n overflow: hidden;\r\n box-sizing: border-box;\r\n}\r\n</style>"]}]}
|