antd-vue - - - - - a-config-provider全局配置中英文切换

项目需求如下:

根据浏览器配置的语言,切换antd-vue的语言模式

代码如下:

app.vue

html 复制代码
<template>
  <a-config-provider
    :locale="locale"
    :theme="{
      token: {
        // 修改主体色为红色
        colorPrimary: 'red',
      },
    }"
  >
    <router-view />
  </a-config-provider>
</template>

<script>
import zhCN from "ant-design-vue/lib/locale/zh_CN"; // 导入中文语言包
import enUS from "ant-design-vue/lib/locale/en_US"; // 导入英文语言包

import dayjs from "dayjs";
import "dayjs/locale/zh-cn";
dayjs.locale("zh-cn");

import { useStore } from "vuex";
import { onMounted, ref, watch } from "vue";

export default {
  name: "App",
  setup() {
    const store = useStore();

	// 简单写个映射
    const lanMaps = {
      en: enUS,
      "zh-CN": zhCN,
    };
    
    const locale = ref(lanMaps[store.state.language] || zhCN);
    
    watch(
      () => store.state.language,
      (v, o) => {
        locale.value = lanMaps[v];
      },
      { deep: true }
    );
    return {
      locale,
    };
  },
};
</script>
相关推荐
掘金安东尼13 分钟前
零 JavaScript 的性能优化视频嵌入
前端·javascript·面试
布列瑟农的星空21 分钟前
从 ES2015 到 ES2025:你还跟得上吗
前端
Filotimo_29 分钟前
Vue 选项式 API vs 组合式 API:区别全解析
前端·javascript·vue.js
文心快码BaiduComate30 分钟前
百度文心快码全面支持GLM-5
前端·人工智能
unirst198500730 分钟前
使用vite打包并部署vue项目到nginx
前端·vue.js·nginx
wordbaby32 分钟前
Vue 实战:从零实现“划词标注”与“高亮笔记”功能
前端
上海合宙LuatOS1 小时前
LuatOS核心库API——【fatfs】支持FAT32文件系统
java·前端·网络·数据库·单片机·嵌入式硬件·物联网
wuhen_n1 小时前
JavaScript 手写 new 操作符:深入理解对象创建
前端·javascript
不想秃头的程序员1 小时前
TypeScript 核心基础知识
前端·面试·typescript
派星1 小时前
Day02:认识 AI IDE 工具
前端·人工智能