this.$t()在vue项目中怎么使用
时间: 2024-10-23 21:08:19 浏览: 34
`this.$t()` 是 Vue.js 中用于国际化(i18n,Internationalization)功能的关键函数。它通常在模板文件(`.vue` 文件)或者组件内部使用,目的是获取并显示当前语言环境下对应的翻译文本。
在Vue项目中,你首先需要设置好国际化的配置,比如使用 `vue-i18n` 插件。步骤如下:
1. 安装插件:
```bash
npm install vue-i18n
```
2. 配置主入口文件(如 main.js 或者 main.ts),创建 Vue 实例时引入并配置 i18n:
```javascript
import { createApp } from 'vue';
import App from './App.vue';
import { defineMessages, LocaleProvider } from 'vue-i18n';
const messages = defineMessages({
// 定义你的翻译键值对
welcomeMessage: { en: 'Welcome!', zh-CN: '欢迎!' },
});
const i18n = new VueI18n({ locale: 'en', messages });
createApp(App)
.use(i18n)
.mount('#app');
```
3. 在组件内使用 `this.$t()` 获取翻译:
```html
<template>
<div>
{{ $t('welcomeMessage') }}
</div>
</template>
<script>
export default {
mounted() {
this.$t('welcomeMessage'); // 输出 "Welcome!"(英文)或"欢迎!"(中文)
}
};
</script>
```
当你切换语言时,只要更改 `locale` 属性,`this.$t` 函数就会自动返回对应语言的翻译。
阅读全文