56 lines
1.3 KiB
Vue
56 lines
1.3 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: 24px; height: 24px; vertical-align: -7px" 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-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>
|