|
@@ -1,26 +1,42 @@
|
|
|
<template>
|
|
|
<div id="index">
|
|
|
<el-row>
|
|
|
- <el-col :span="24" class="style">
|
|
|
+ <el-col :span="24" class="con">
|
|
|
<el-col :span="24" class="top">
|
|
|
<NavBar v-show="navShow" :title="title" :isleftarrow="isleftarrow"> </NavBar>
|
|
|
</el-col>
|
|
|
<el-col :span="24" class="main">
|
|
|
- <span v-if="columnview == '0'">
|
|
|
- <product :province="province" :place="place"></product>
|
|
|
+ <span v-if="itemIndex == 0">
|
|
|
+ <onlineEx :province="province" :place="place"></onlineEx>
|
|
|
</span>
|
|
|
- <span v-else-if="columnview == '1'">
|
|
|
- <personal :province="province" :place="place"></personal>
|
|
|
+ <span v-if="itemIndex == 1">
|
|
|
+ <channel :province="province" :place="place"></channel>
|
|
|
</span>
|
|
|
- <span v-else-if="columnview == '2'">
|
|
|
- <exports :province="province" :place="place"></exports>
|
|
|
+ <span v-if="itemIndex == 2">
|
|
|
+ <span v-if="chooseText == '嘉宾访谈'">
|
|
|
+ <interview></interview>
|
|
|
+ </span>
|
|
|
+ <span v-else-if="chooseText == '技能培训'">
|
|
|
+ <skill></skill>
|
|
|
+ </span>
|
|
|
+ <!-- <training :province="province" :place="place" :chooseText="chooseText"> </training> -->
|
|
|
+ </span>
|
|
|
+ <span v-if="itemIndex == 3">
|
|
|
+ <roadshow :province="province" :place="place"></roadshow>
|
|
|
</span>
|
|
|
</el-col>
|
|
|
<el-col :span="24" class="foot">
|
|
|
- <van-tabbar v-model="active" @change="changeType">
|
|
|
- <van-tabbar-item icon="cluster-o">科技成果在线</van-tabbar-item>
|
|
|
- <van-tabbar-item icon="friends-o" disabled>人才对接在线</van-tabbar-item>
|
|
|
- <van-tabbar-item icon="manager-o">专家培训在线</van-tabbar-item>
|
|
|
+ <van-tabbar v-model="active" @change="clickItem">
|
|
|
+ <van-tabbar-item icon="home-o">在线展会</van-tabbar-item>
|
|
|
+ <van-tabbar-item icon="search">科技频道</van-tabbar-item>
|
|
|
+ <van-tabbar-item icon="friends-o" class="train" @click="trainClick"
|
|
|
+ >培训访谈
|
|
|
+ <el-col :span="4" class="itemCon" v-if="show">
|
|
|
+ <el-col :span="24" class="text" @click.native.stop="interviewClick('嘉宾访谈')">嘉宾访谈</el-col>
|
|
|
+ <el-col :span="24" class="text" @click.native.stop="interviewClick('技能培训')">技能培训</el-col>
|
|
|
+ </el-col>
|
|
|
+ </van-tabbar-item>
|
|
|
+ <van-tabbar-item icon="setting-o">项目路演</van-tabbar-item>
|
|
|
</van-tabbar>
|
|
|
</el-col>
|
|
|
</el-col>
|
|
@@ -29,40 +45,59 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import { mapState, mapMutations, createNamespacedHelpers } from 'vuex';
|
|
|
import NavBar from '@/layout/common/topInfo.vue';
|
|
|
-import footInfo from '@/layout/common/footInfo.vue';
|
|
|
-import product from './parts/product.vue';
|
|
|
-import personal from './parts/personal.vue';
|
|
|
-import exports from './parts/exports.vue';
|
|
|
+//在线展会
|
|
|
+import onlineEx from './parts/onlineEx.vue';
|
|
|
+//科技频道
|
|
|
+import channel from './parts/channel.vue';
|
|
|
+//嘉宾访谈
|
|
|
+import interview from './parts/interview.vue';
|
|
|
+//技能培训
|
|
|
+import skill from './parts/skill.vue';
|
|
|
+//项目路演
|
|
|
+import roadshow from './parts/roadshow.vue';
|
|
|
+import { mapState, mapMutations, createNamespacedHelpers } from 'vuex';
|
|
|
const { mapActions: dock } = createNamespacedHelpers('dock');
|
|
|
const { mapActions: place } = createNamespacedHelpers('place');
|
|
|
const jwt = require('jsonwebtoken');
|
|
|
export default {
|
|
|
+ metaInfo() {
|
|
|
+ return { title: this.$route.meta.title };
|
|
|
+ },
|
|
|
name: 'index',
|
|
|
props: {},
|
|
|
components: {
|
|
|
+ //顶部
|
|
|
NavBar,
|
|
|
- // footInfo,
|
|
|
- product,
|
|
|
- personal,
|
|
|
- exports,
|
|
|
+ //在线展会
|
|
|
+ onlineEx,
|
|
|
+ //科技频道
|
|
|
+ channel,
|
|
|
+ //项目路演
|
|
|
+ roadshow,
|
|
|
+ //嘉宾访谈
|
|
|
+ interview,
|
|
|
+ //技能培训
|
|
|
+ skill,
|
|
|
},
|
|
|
data: function() {
|
|
|
return {
|
|
|
- // 头部标题
|
|
|
- title: '科技成果在线',
|
|
|
+ //头部标题
|
|
|
+ title: '在线展会',
|
|
|
// meta为true
|
|
|
isleftarrow: '',
|
|
|
// 返回
|
|
|
navShow: true,
|
|
|
+ //底部标签
|
|
|
+ active: 0,
|
|
|
+ //默认显示item的index值
|
|
|
+ itemIndex: 0,
|
|
|
// 省
|
|
|
province: [],
|
|
|
// 市
|
|
|
place: [],
|
|
|
- // 显示模块
|
|
|
- columnview: '0',
|
|
|
- active: 0,
|
|
|
+ chooseText: '',
|
|
|
+ show: false,
|
|
|
};
|
|
|
},
|
|
|
async created() {
|
|
@@ -88,17 +123,31 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
- // 选择栏目
|
|
|
- changeType(value) {
|
|
|
- if (value == '0') {
|
|
|
- this.$set(this, `title`, '科技成果在线');
|
|
|
- } else if (value == '1') {
|
|
|
- this.$set(this, `title`, '人才对接在线');
|
|
|
- } else if (value == '2') {
|
|
|
- this.$set(this, `title`, '专家培训在线');
|
|
|
+ //点击底部标签显示对应的组件
|
|
|
+ clickItem(index) {
|
|
|
+ // console.log(index);
|
|
|
+ this.$set(this, `itemIndex`, index);
|
|
|
+ if (index == 0) {
|
|
|
+ this.$set(this, `title`, '在线展会');
|
|
|
+ } else if (index == 1) {
|
|
|
+ this.$set(this, `title`, '科技频道');
|
|
|
+ } else if (index == 2) {
|
|
|
+ if (this.chooseText == '嘉宾访谈') {
|
|
|
+ this.$set(this, `title`, '培训访谈');
|
|
|
+ } else if (this.chooseText == '技能培训') {
|
|
|
+ this.$set(this, `title`, '技能培训');
|
|
|
+ }
|
|
|
+ } else if (index == 3) {
|
|
|
+ this.$set(this, `title`, '项目路演');
|
|
|
}
|
|
|
- this.$set(this, `columnview`, value);
|
|
|
- this.$set(this, `active`, value);
|
|
|
+ },
|
|
|
+ //嘉宾访谈和技能培训
|
|
|
+ interviewClick(name) {
|
|
|
+ this.$set(this, `show`, false);
|
|
|
+ this.$set(this, `chooseText`, name);
|
|
|
+ },
|
|
|
+ trainClick() {
|
|
|
+ this.show = true;
|
|
|
},
|
|
|
},
|
|
|
computed: {
|
|
@@ -123,7 +172,7 @@ export default {
|
|
|
</script>
|
|
|
|
|
|
<style lang="less" scoped>
|
|
|
-.style {
|
|
|
+.con {
|
|
|
width: 100%;
|
|
|
height: 100%;
|
|
|
position: relative;
|
|
@@ -135,4 +184,30 @@ export default {
|
|
|
position: relative;
|
|
|
z-index: 999;
|
|
|
}
|
|
|
+.train {
|
|
|
+ position: relative;
|
|
|
+}
|
|
|
+// .itemCon_active {
|
|
|
+// display: block;
|
|
|
+// }
|
|
|
+.itemCon {
|
|
|
+ width: 100px;
|
|
|
+ height: 87px;
|
|
|
+ padding: 13px;
|
|
|
+ // background-color: gold;
|
|
|
+ position: absolute;
|
|
|
+ left: -6px;
|
|
|
+ bottom: 50px;
|
|
|
+ box-shadow: 0px -1px 5px;
|
|
|
+ z-index: 999;
|
|
|
+ background-color: #fff;
|
|
|
+ .text {
|
|
|
+ color: #646566;
|
|
|
+ font-size: 14px;
|
|
|
+ line-height: 30px;
|
|
|
+ height: 30px;
|
|
|
+ text-align: center;
|
|
|
+ // background: green;
|
|
|
+ }
|
|
|
+}
|
|
|
</style>
|