android logo 国际化,国际化:i18n实现多语言

本文介绍了如何在Vue项目中使用vue-i18n库来实现多语言支持,包括安装库、配置语言包、创建不同语言的js文件,并在项目中引用和使用。通过将语言包存放在项目内,实现了中英双语的切换,同时提供了按模块划分的语言对照示例。
摘要由CSDN通过智能技术生成

如果项目需要多语言的支持,我们需要做国际化

使用 vue-i18n 来实现多语言的界面

安装

$ npm install vue-i18n --save

关于语言包,我们有几种方式,一种是每个语言包一个独立的js放到项目里, 或者将语言的对照写在 .vue 文件里, 或者加载远程的JSON语言包

我们的后台界面需要支持的语言通常不多,更新也不会非常的频繁,所以我们将语言包放在项目里,规划项目目录,增加 lang 目录来存放语言对照

新建index.js

import Vue from 'vue'

import VueI18n from 'vue-i18n'

Vue.use(VueI18n)

const i18n = new VueI18n({

locale: localStorage.getItem('lang') || 'cn', // 语言标识

messages: {

'cn': require('./cn'), // 中文语言包

'en': require('./en') // 英文语言包

}

})

export default i18n

加载中英双语,然后再分别创建 cn.js和en.js

编写语言对照, 我们按照项目来规划类似main auth nav这样的分组,或者理解为命名空间吧

// cn.js

export const main = {

'logo': '认证管理后台',

'searchbox': '快速搜索',

'profile': '用户中心',

'password': '修改密码',

'logout': '退出登陆',

'lang_cn': '简体中文',

'lang_en': '英文'

}

export const auth = {

'login_title': '用户登陆',

'logout_title': '用户退出',

'username': '用户名',

'password': '密码',

'login': '登陆',

'relogin': '重新登陆',

'register': '注册',

'password_forgot': '忘记密码'

}

export const nav = {

dashboard: '运行状态',

dev: '我的设备',

portal: '认证设置',

network: '网络管理',

stat: '统计分析',

users: '认证用户',

extends: '扩展功能'

}

修改main.js在项目引入i18n

import i18n from './lang'

...

new Vue({

el: '#app',

i18n,

router,

template: '',

components: { App }

})

在页面html中使用的方式

{{ $t('main.logo') }}

在js中使用

data () {

return {

login_title: this.$t('auth.login_title')

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值