管道基础大数据平台系统开发-【前端】-新系統界面
TreeWish
2023-02-16 b35f0d6e95c72dc03d6f765eb07041ca882f7b3b
底部菜单交互逻辑
已修改1个文件
197 ■■■■■ 文件已修改
src/components/Screen/bottom.vue 197 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/Screen/bottom.vue
@@ -3,7 +3,13 @@
    <div class="bottom1">
      <div class="bottom11"></div>
      <div class="bottom12">
        <div class="bottombtn">
        <div
          :class="currMenu == item.menuName ? 'active' : ''"
          v-for="item in menuList"
          :key="item.menuName"
          class="bottombtn"
          @click="handleMenuClick(item)"
        >
          <el-popover
            popper-class="popover"
            placement="top"
@@ -17,58 +23,15 @@
              <div class="popover-content__list">
                <div
                  class="popover-content__list__item"
                  v-for="item in projectInfoList"
                  :key="item.id"
                  :class="currProject == item.name ? 'active' : ''"
                  @click="handlePopoverClick(item)"
                  v-for="child in item.children"
                  :key="child.id"
                  :class="currProject == child.name ? 'active' : ''"
                  @click="handlePopoverClick(child)"
                >
                  {{ item.name }}
                  {{ child.name }}
                </div>
              </div>
            </div>
          </el-popover>
        </div>
        <div class="bottombtn">
          <el-popover placement="top" width="100" trigger="click">
            <!-- 内容 -->
            <span slot="reference">工程展示</span>
            <div class="popover-content">
              <div class="popover-content__header">项目信息</div>
              <div class="popover-content__list">
                <div
                  class="popover-content__list__item"
                  v-for="item in displayProject"
                  :key="item.id"
                  :class="currProject == item.name ? 'active' : ''"
                  :title="item.name"
                  @click="DisplayCurrentProject(item.name)"
                >
                  {{ item.name.length>8?item.name.substring(0,8):item.name }}
                </div>
              </div>
            </div>
          </el-popover>
        </div>
        <div class="bottombtn">
          <el-popover placement="top" width="100" trigger="click">
            <!-- 内容 -->
            <span slot="reference">工程巡视</span>
            <div class="popover-content">
              <div class="popover-content__header">项目信息</div>
              <div class="popover-content__list">
                <div
                  class="popover-content__list__item"
                  v-for="item in FlyProject"
                  :key="item.id"
                  :class="currProject == item.name ? 'active' : ''"
                  :title="item.name"
                  @click="FlyCurrentProject(item.name)"
                >
                  {{ item.name.length>8?item.name.substring(0,8):item.name }}
                </div>
              </div>
            </div>
          </el-popover>
        </div>
      </div>
@@ -87,66 +50,73 @@
    return {
      YXState: true,
      yxImg: require("../../assets/img/Screen/yximg.png"),
      currMenu: "项目展示",
      currProject: "全球管网图",
      projectInfoList: [
      menuList: [
        {
          name: "全国管网图",
          id: "qggwt",
          menuName: "项目展示",
          children: [
            {
              name: "全国管网图",
              id: "qggwt",
            },
            {
              name: "全球管网图",
              id: "qqgwt",
            },
            {
              name: "全国项目",
              id: "qgxm",
            },
            {
              name: "全球项目",
              id: "qqxm",
            },
          ],
        },
        {
          name: "全球管网图",
          id: "qqgwt",
          menuName: "工程展示",
          children: [
            {
              name: "中俄东线管道工程",
              id: "zedx",
            },
            {
              name: "西气东输三线中断管道工程",
              id: "xqds",
            },
            {
              name: "中缅天然气管道工程",
              id: "zmtrq",
            },
            {
              name: "山东官网新干线",
              id: "sdxgx",
            },
          ],
        },
        {
          name: "全国项目",
          id: "qgxm",
        },
        {
          name: "全球项目",
          id: "qqxm",
          menuName: "工程巡视",
          children: [
            {
              name: "中俄东线管道工程",
              id: "zedx",
            },
            {
              name: "西气东输三线中断管道工程",
              id: "xqds",
            },
            {
              name: "中缅天然气管道工程",
              id: "zmtrq",
            },
            {
              name: "山东官网新干线",
              id: "sdxgx",
            },
          ],
        },
      ],
      displayProject:[
        {
          name:"中俄东线管道工程",
          id:"zedx"
        },
        {
          name:"西气东输三线中断管道工程",
          id:"xqds"
        },
        {
          name:"中缅天然气管道工程",
          id:"zmtrq"
        },
        {
          name:"山东官网新干线",
          id:"sdxgx"
        },
      ],
      FlyProject:[
        {
          name:"中俄东线管道工程",
          id:"zedx"
        },
        {
          name:"西气东输三线中断管道工程",
          id:"xqds"
        },
        {
          name:"中缅天然气管道工程",
          id:"zmtrq"
        },
        {
          name:"山东官网新干线",
          id:"sdxgx"
        },
      ]
    }
  },
  methods: {
@@ -165,28 +135,28 @@
      }
      this.YXState = !this.YXState
    },
    handlePopoverClick(params) {
      this.currProject = params.name
    handleMenuClick(menu) {
      this.currMenu = menu.menuName
    },
    handlePopoverClick(child) {
      this.currProject = child.name
    },
    //项目展示
    DisplayCurrentProject(parm){
      console.log(parm);
    DisplayCurrentProject(parm) {
      console.log(parm)
      //打开或者加载图层
      //飞到指定位置
    },
    //工程漫游飞行
    FlyCurrentProject(parm){
      console.log(parm);
    FlyCurrentProject(parm) {
      console.log(parm)
      //打开或者加载图层
      //开始飞行
    }
    },
  },
}
</script>
@@ -245,6 +215,10 @@
      color: #fff;
      font-weight: 600;
      cursor: pointer;
      &.active {
        background: url(~@/assets/img/Screen/centerbtnc.png);
        background-size: 100% 100%;
      }
    }
  }
@@ -314,7 +288,6 @@
          // background-color: aqua;
          background: url(~@/assets/img/Screen/btnc.png);
          background-size: 100% 100%;
        }
      }
    }