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>
相关推荐
用户458203153175 小时前
CSS特异性:如何精准控制样式而不失控?
前端·css
用户51681661458416 小时前
Vue Router 路由懒加载引发的生产页面白屏问题
vue.js·vue-router
libraG6 小时前
Jenkins打包问题
前端·npm·jenkins
前端康师傅6 小时前
JavaScript 作用域
前端·javascript
前端缘梦6 小时前
Vue Keep-Alive 组件详解:优化性能与保留组件状态的终极指南
前端·vue.js·面试
我是天龙_绍6 小时前
使用 TypeScript (TS) 结合 JSDoc
前端
云枫晖6 小时前
JS核心知识-事件循环
前端·javascript
Simon_He6 小时前
这次来点狠的:用 Vue 3 把 AI 的“碎片 Markdown”渲染得又快又稳(Monaco 实时更新 + Mermaid 渐进绘图)
前端·vue.js·markdown
eason_fan7 小时前
Git 大小写敏感性问题:一次组件重命名引发的CI构建失败
前端·javascript
无羡仙7 小时前
JavaScript 迭代器
前端