| | |
| | | <template> |
| | | <flex-layout no-bg> |
| | | <div class="iframe-container" v-loading="loading" element-loading-text="加载中..." element-loading-spinner="el-icon-loading" element-loading-background="rgba(0, 0, 0, 0.2)"> |
| | | <iframe v-if="src" scrolling="no" frameborder="0" :src="src"></iframe> |
| | | <iframe ref="bigScreenIframe" v-if="src" scrolling="no" frameborder="0" :src="src"></iframe> |
| | | </div> |
| | | </flex-layout> |
| | | </template> |
| | | |
| | | <script> |
| | | import getScreenUrl from '@/assets/js/tools/getScreenUrl' |
| | | import {Timeout} from "@/assets/js/tools"; |
| | | export default { |
| | | data() { |
| | | let url = getScreenUrl(); |
| | | |
| | | return { |
| | | loading: true, |
| | | url: url, |
| | | src: "", |
| | | acTabs: 'index', |
| | | timer: new Timeout(), |
| | | }; |
| | | }, |
| | | methods: { |
| | | startTimer() { |
| | | this.timer.start(()=>{ |
| | | let bigScreenIframe = this.$refs.bigScreenIframe; |
| | | |
| | | if(!bigScreenIframe) { |
| | | this.timer.open(); |
| | | return; |
| | | } |
| | | let name = sessionStorage.getItem('acTabs'); |
| | | if(this.acTabs=="index" && name != "index") { |
| | | this.acTabs = name; |
| | | bigScreenIframe.contentWindow.postMessage({ |
| | | source: "fg", |
| | | state: 0, |
| | | message: "关闭首页查询" |
| | | }, "*"); |
| | | }else if(this.acTabs != "index" && name == "index") { |
| | | this.acTabs = "index"; |
| | | bigScreenIframe.contentWindow.postMessage({ |
| | | source: "fg", |
| | | state: 1, |
| | | message: "启动首页查询" |
| | | }, "*"); |
| | | } |
| | | this.timer.open(); |
| | | }, 1000); |
| | | }, |
| | | getActivePage(userId) { |
| | | this.$axios({ |
| | | methods: "get", |
| | |
| | | params: { |
| | | userId: userId, |
| | | }, |
| | | }) |
| | | .then((res) => { |
| | | }).then((res) => { |
| | | let rs = res.data; |
| | | console.log(rs); |
| | | if (rs.code == 1 && rs.data) { |
| | | let id = rs.data.id; |
| | | let name = rs.data.name; |
| | |
| | | } |
| | | this.src = |
| | | screenUrl + |
| | | "#/exhibition?id=" + |
| | | id + |
| | | "&name=" + |
| | | name + |
| | | "&head=1"; |
| | | "#/exhibition?id="+id+ |
| | | "&name="+name+ |
| | | "&head=1"+ |
| | | "&userId="+userId; |
| | | } else { |
| | | this.$router.push("index"); |
| | | } |
| | |
| | | }, |
| | | }, |
| | | mounted() { |
| | | this.startTimer(); |
| | | this.$nextTick(() => { |
| | | let userId = sessionStorage.getItem('userId'); |
| | | this.getActivePage(userId); |
| | |
| | | }, |
| | | { |
| | | path: '/screen', |
| | | name: 'screen', |
| | | name: 'index', |
| | | meta: {}, |
| | | component: (resolve) => require(['../pages/screen.vue'], resolve) |
| | | }, |