[Element-plus]动态设置组件的语言

nuxt element-plus国际化

vue element-plus国际化

html 复制代码
<template>
  <div class="container">
<!--    <LangSwitcher />-->
    <button @click="toggle('zh-cn')">中文</button>
    <button @click="toggle('en')">English</button>
    <button @click="toggle('ja')">日本语</button>
    <div>
      <br />
      <el-config-provider :locale="locale">
        <el-table :data="[]" />
        <el-pagination :total="100" />
      </el-config-provider>
    </div>
  </div>
</template>

<script setup lang="ts">
import LangSwitcher from './lang.vue'
const dialogVisible = ref(false)
const openDialog = () => {
  dialogVisible.value = true
}
import { ref, computed } from 'vue'
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
import en from 'element-plus/dist/locale/en.mjs'
import ja from 'element-plus/dist/locale/ja.mjs'

const language = ref(zhCn)
const locale = computed(() => {
  switch(language.value) {
    case 'zh-cn':
      return zhCn
    case 'en':
      return en
    case 'ja':
      return ja
    default:
      return zhCn
  }
})

//设置多语言的方法
const toggle = (event: string) => {
  // language.value = language.value === 'zh-cn' ? 'en' : 'zh-cn'
  language.value = event
}
</script>
相关推荐
小白的代码日记2 分钟前
Springboot-vue 地图展现
前端·javascript·vue.js
teeeeeeemo4 分钟前
js 实现 ajax 并发请求
开发语言·前端·javascript·笔记·ajax
清秋33 分钟前
全网最全 ECMAScript 攻略( 更新至 ES2025)
前端·javascript·ecmascript 6
Juchecar1 小时前
Node.js package.json 配置详解 + TypeScript + ES Module 集成指南
javascript
李明卫杭州2 小时前
深入理解CSS变量(Custom Properties)
前端·javascript
一枚前端小能手2 小时前
💫 回调套回调写到崩溃,异步编程其实可以很优雅
前端·javascript
用户47949283569152 小时前
深入理解JavaScript:手写实现Array.prototype.push方法
前端·javascript
前端Hardy2 小时前
HTML&CSS&JS:卡片3D倾斜效果
前端·javascript·css
前端Hardy2 小时前
HTML&CSS&JS:一键登录页面
前端·javascript·css
Winwin2 小时前
本地没有问题啊!?crypto.randomUUID() 的坑
javascript