ElementPlus 组件内部默认使用英语,若希望使用其他语言,可以参考下面的方案。
ElementPlus 提供了全局配置国际化的设置。
import ElementPlus from 'element-plus'
import zhCn from 'element-plus/es/locale/lang/zh-cn'
app.use(ElementPlus, {
locale: zhCn,
})
ElementPlus 还提供了一个 Vue 组件?ConfigProvider用于全局配置国际化的设置。
<template>
<el-config-provider :locale="locale">
<app />
</el-config-provider>
</template>
<script>
import { defineComponent } from 'vue'
import { ElConfigProvider } from 'element-plus'
import zhCn from 'element-plus/lib/locale/lang/zh-cn'
export default defineComponent({
components: {
ElConfigProvider,
},
setup() {
return {
locale: zhCn,
}
},
})
</script>
HTML
详细配置见:ConfigProvider
如果你是使用 CDN 引入的 ElementPlus,那你将需要这样做,以 unpkg 举例
<script src="//unpkg.com/element-plus/dist/locale/zh-cn" rel="external nofollow" >
<script>
app.use(ElementPlus, {
locale: ElementPlus.lang.zhCn
})
</script>
HTML
如果你需要使用其他的语言,欢迎贡献?PR?只需在这里?添加一个语言配置文件即可。
当你的应用默认不是使用英语的时候,你需要额外引入一个新的语言,这样会使得没有用到的语言文件被打包,会增加最终产物的文件大小,如果你非常在意最终产物文件的大小,你可以使用?webpack?提供的?NormalModuleReplacementPlugin?插件替换默认语言包。你可以把以下代码添加进?webpack.config.js?文件中来应用这个插件。
webpack.config.js
{
plugins: [
new webpack.NormalModuleReplacementPlugin(
/element-plus[\/\\]lib[\/\\]locale[\/\\]lang[\/\\]en/,
'element-plus/lib/locale/lang/zh-cn'
),
]
}