Blame view

src/components/LangSelect/index.vue 1.05 KB
d7d9c38c2   Adam   auto commit the c...
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
  <template>
    <el-dropdown trigger="click" class="international" @command="handleSetLanguage">
      <div>
        <svg-icon class-name="international-icon" icon-class="language" />
      </div>
      <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-item :disabled="language==='es'" command="es">
          Español
        </el-dropdown-item>
        <el-dropdown-item :disabled="language==='ja'" command="ja">
          日本語
        </el-dropdown-item>
      </el-dropdown-menu>
    </el-dropdown>
  </template>
  
  <script>
  export default {
    computed: {
      language() {
        return this.$store.getters.language
      }
    },
    methods: {
      handleSetLanguage(lang) {
        this.$i18n.locale = lang
        this.$store.dispatch('app/setLanguage', lang)
        this.$message({
          message: 'Switch Language Success',
          type: 'success'
        })
      }
    }
  }
  </script>