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>
相关推荐
阿珊和她的猫12 小时前
前端应用首屏加载速度优化全攻略
前端·状态模式
Mike_jia13 小时前
LiteOps:轻量级CI/CD平台,重塑开发运维新体验
前端
浮游本尊13 小时前
React 18.x 学习计划 - 第十四天:实战整合与进阶收尾
前端·学习·react.js
_Eleven17 小时前
Tailwind CSS vs UnoCSS 深度对比
前端
NEXT0618 小时前
TCP 与 UDP 核心差异及面试高分指南
前端·网络协议·面试
qq_242188633218 小时前
HTML 全屏烟花网页
前端·html
曲幽18 小时前
FastAPI实战:WebSocket长连接保持与心跳机制,从入门到填坑
javascript·python·websocket·keep-alive·fastapi·heartbeat·connection
码云数智-大飞18 小时前
前端性能优化全链路实战:从加载速度到渲染效率的极致提速方案
前端·性能优化
锅包一切18 小时前
【蓝桥杯JavaScript基础入门】一、JavaScript基础
开发语言·前端·javascript·蓝桥杯