chengxiangling
2025-05-14 4172a45c661ee22429e645dfa02d6c4a77eec668
src/layout/components/Navbar.vue
@@ -20,8 +20,18 @@
    <div class="right-menu">
      <template v-if="appStore.device !== 'mobile'"> </template>
      <div class="mt5">
          <el-button @click="changeLanguage('zh')">中文</el-button>
          <el-button @click="changeLanguage('en')">English</el-button>
        <!-- <el-button @click="changeLanguage('zh')">中文</el-button>
          <el-button @click="changeLanguage('en')">English</el-button> -->
        <!-- <el-dropdown>
          <img class="zh_icon" v-if="locale==='zh'" src="@/assets/images/zh.svg" alt="zh" />
          <img class="zh_icon" v-if="locale==='en'" src="@/assets/images/en.svg" alt="en" />
          <template #dropdown>
            <el-dropdown-menu>
              <el-dropdown-item  @click="changeLanguage('zh','zh-CN')">{{ $t(`common.topNav.zh`) }}</el-dropdown-item>
              <el-dropdown-item @click="changeLanguage('en','en-US')">{{ $t(`common.topNav.en`) }}</el-dropdown-item>
            </el-dropdown-menu>
          </template>
        </el-dropdown> -->
      </div>
      <div class="avatar-container">
        <el-dropdown
@@ -36,13 +46,13 @@
          <template #dropdown>
            <el-dropdown-menu>
              <router-link to="/user/profile">
                <el-dropdown-item>{{ $t(`topNav.center`) }}</el-dropdown-item>
                <el-dropdown-item>{{ $t(`common.topNav.center`) }}</el-dropdown-item>
              </router-link>
              <!-- <el-dropdown-item command="setLayout" v-if="settingsStore.showSettings">
                <span>布局设置</span>
              </el-dropdown-item> -->
              <el-dropdown-item divided command="logout">
                <span>{{ $t(`topNav.logout`) }}</span>
                <span>{{ $t(`common.topNav.logout`) }}</span>
              </el-dropdown-item>
            </el-dropdown-menu>
          </template>
@@ -53,7 +63,7 @@
</template>
<script setup>
import { ElMessageBox } from "element-plus";
// import { ElMessageBox } from "element-plus";
import Breadcrumb from "@/components/Breadcrumb";
import TopNav from "@/components/TopNav";
import Hamburger from "@/components/Hamburger";
@@ -65,16 +75,20 @@
import useAppStore from "@/store/modules/app";
import useUserStore from "@/store/modules/user";
import useSettingsStore from "@/store/modules/settings";
import useLanguageStore from "@/store/modules/language"
import { useI18n } from 'vue-i18n'//要在js中使用国际化
import useLanguageStore from "@/store/modules/language";
import { VxeUI } from 'vxe-table'
import { useI18n } from "vue-i18n"; //要在js中使用国际化
const { t, locale } = useI18n();
const appStore = useAppStore();
const userStore = useUserStore();
const settingsStore = useSettingsStore();
const languageStore = useLanguageStore();
const { proxy } = getCurrentInstance();
function changeLanguage(type) {
  proxy.$i18n.locale = type;
  languageStore.setLocale(type)
function changeLanguage(type1,type2) {
  proxy.$i18n.locale = type1;
  languageStore.setLocale(type1);
  VxeUI.setLanguage(type2)
  // console.log(VxeUI.getLanguage(),'VxeUI.getLanguage()')
}
function toggleSideBar() {
@@ -158,8 +172,14 @@
    height: 100%;
    line-height: 50px;
    display: flex;
    .mt5{
      margin-top:5px;
    .mt5 {
      margin-top: 5px;
      .zh_icon {
        width: 35px;
        height: 35px;
        border:none;
        outline: none;
      }
    }
    &:focus {
      outline: none;