11-mes-new/src/components/LangSelect/index.vue
2022-11-11 14:05:56 +08:00

66 lines
1.6 KiB
Vue

<!--
* @Author: your name
* @Date: 2021-01-27 10:07:42
* @LastEditTime: 2021-02-24 11:13:53
* @LastEditors: gtz
* @Description: In User Settings Edit
* @FilePath: \mt-bus-fe\src\components\LangSelect\index.vue
-->
<template>
<el-dropdown trigger="click" class="international" @command="handleSetLanguage">
<div>
<svg-icon
style="width: calc(24px * var(--beilv)); height: calc(24px * var(--beilv)); vertical-align: calc(-7px * var(--beilv));"
class-name="international-icon"
:icon-class="isShow ? 'language2' : 'language3'"
/>
</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 {
props: {
isShow: {
type: Boolean,
default: () => {
return true
}
}
},
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',
duration: 2000,
onClose: () => {
location.reload()
}
})
}
}
}
</script>