app-header-menus.vue 2.7 KB
Newer Older
ibizdev's avatar
ibizdev committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
<template>
  <div class="app-header-menus">
    <div v-for="menu in menus" class="app-header-menu-item text" @click="openWindow(menu)">
      <div class="app-header-menu-item-icon">
        <i :class="menu.iconcls" :aria-hidden="true" />
      </div>
      <div class="app-header-menu-item-text">{{$t(menu.title)}}</div>

    </div>
  </div> 
</template>

<script lang="ts">
import { Vue, Component, Prop, Model, Emit } from "vue-property-decorator";
import { Subject } from "rxjs";
import { Environment } from '@/environments/environment';

@Component({
    i18n: {
        messages: {
            'zh-CN': {
                menus: {
                    ibizlab:{
                        title: 'iBiz开放平台',
                    },
                    publishProject:{
                        title: '项目文件',
                    },
                    ibizstudio:{
                        title: '模型设计工具',
                    },
                    ibizbbs:{
                        title: 'iBiz论坛',
                    },
                }
            },
            'en-US': {
                menus: {
                    ibizlab:{
                        title: 'iBizLab',
                    },
                    publishProject:{
                        title: 'Publish Project',
                    },
                    ibizstudio:{
                        title: 'Model Design Tools',
                    },
                    ibizbbs:{
                        title: 'iBizBBS',
                    },
                }
            }
        }
    }
})
export default class AppHeaderMenus extends Vue {

  /**
   * 菜单数据
   * 
   * @type {any}
   * @memberof AppHeaderMenus
   */
  public menus:any = [
      {
          name: "ibizlab",
          title: "menus.ibizlab.title",
          url: Environment.ibizlabtUrl,
          iconcls: 'fa fa-home',
      },
      {
          name: "publishProject",
          title: "menus.publishProject.title",
          url: Environment.PublishProjectUrl,
          iconcls: 'fa fa-folder-open-o',
      },
      {
          name: "ibizstudio",
          title: "menus.ibizstudio.title",
          url: `${Environment.StudioUrl}?#/common_slnindex/srfkeys=${Environment.DCId}/sysdesign_psdevslnsysmodeltreeexpview`,
          iconcls: 'fa fa-wrench',
      },
      {
          name: "ibizbbs",
          title: "menus.ibizbbs.title",
          url: Environment.ibizbbstUrl,
          iconcls: 'fa fa-comments-o',
      },
  ];

  /**
   * 触发界面行为
   * 
   * @memberof AppHeaderMenus
   */
  public openWindow(menu:any){
      window.open(menu.url, '_blank');
  }


}
</script>

<style lang='less'>
@import "./app-header-menus.less";
</style>