田源
2025-01-15 78fa1f005a9ec2581611e53d7eba8efeacb4df6e
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
<template>
  <el-dropdown trigger="click" :style="dropdownStyle"
               @command="handleSetLanguage">
    <i class="icon-zhongyingwen"></i>
    <el-dropdown-menu slot="dropdown">
      <el-dropdown-item :disabled="language==='zh'"
                        command="zh">中文
      </el-dropdown-item>
      <el-dropdown-item :disabled="language==='en'"
                        command="en">English
      </el-dropdown-item>
    </el-dropdown-menu>
  </el-dropdown>
</template>
 
<script>
  import {mapGetters} from "vuex";
 
  export default {
    name: "top-lang",
    data() {
      return {};
    },
    created() {
    },
    mounted() {
    },
    computed: {
      ...mapGetters(["language", "tag"]),
      dropdownStyle(){
        return {
          color:this.type === 'login' ? 'white' : 'black'
        }
      }
    },
    props: ["type"],
    methods: {
      handleSetLanguage(lang) {
        this.$i18n.locale = lang;
        this.$store.commit("SET_LANGUAGE", lang);
        let tag = this.tag;
        let title = this.$router.$avueRouter.generateTitle(
          tag.label,
          (tag.meta || {}).i18n
        );
        //根据当前的标签也获取label的值动态设置浏览器标题
        this.$router.$avueRouter.setTitle(title);
      }
    }
  };
</script>
 
<style lang="scss" scoped>
</style>