add i18n
This commit is contained in:
		
							
								
								
									
										39
									
								
								src/components/LangSelect/index.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								src/components/LangSelect/index.vue
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,39 @@ | ||||
| <template> | ||||
|   <el-dropdown trigger="click" @command="handleLanguageChange"> | ||||
|     <div class="lang-select--style"> | ||||
|       <svg-icon icon-class="language" /> | ||||
|     </div> | ||||
|     <template #dropdown> | ||||
|       <el-dropdown-menu> | ||||
|         <el-dropdown-item :disabled="appStore.language === 'zh-cn'" command="zh-cn"> 中文 </el-dropdown-item> | ||||
|         <el-dropdown-item :disabled="appStore.language === 'en'" command="en"> English </el-dropdown-item> | ||||
|       </el-dropdown-menu> | ||||
|     </template> | ||||
|   </el-dropdown> | ||||
| </template> | ||||
|  | ||||
| <script setup lang="ts"> | ||||
| import { useI18n } from 'vue-i18n'; | ||||
| import SvgIcon from '@/components/SvgIcon/index.vue'; | ||||
| import { useAppStore } from '@/store/modules/app'; | ||||
|  | ||||
| const appStore = useAppStore(); | ||||
| const { locale } = useI18n(); | ||||
|  | ||||
| function handleLanguageChange(lang: string) { | ||||
|   locale.value = lang; | ||||
|   appStore.changeLanguage(lang); | ||||
|   if (lang == 'en') { | ||||
|     ElMessage.success('Switch Language Successful!'); | ||||
|   } else { | ||||
|     ElMessage.success('切换语言成功!'); | ||||
|   } | ||||
| } | ||||
| </script> | ||||
|  | ||||
| <style lang="scss" scoped> | ||||
| .lang-select--style { | ||||
|   font-size: 18px; | ||||
|   line-height: 50px; | ||||
| } | ||||
| </style> | ||||
| @ -7,14 +7,3 @@ | ||||
| <script setup lang="ts"> | ||||
| const { isFullscreen, toggle } = useFullscreen(); | ||||
| </script> | ||||
|  | ||||
| <style lang="scss" scoped> | ||||
| .screenfull-svg { | ||||
|   display: inline-block; | ||||
|   cursor: pointer; | ||||
|   fill: #5a5e66; | ||||
|   width: 20px; | ||||
|   height: 20px; | ||||
|   vertical-align: 10px; | ||||
| } | ||||
| </style> | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 LiuHao
					LiuHao