vue i18国际化
VUE项目首先我们需要创建一个vue项目。然后在创建vue项目之前,我们本地需要安装nodeJs和git。Git之前下载安装就好,只是基本的命令。什么是nodeJs? Node.js就是这样一个服务器端的、非阻断式I/O的、事件驱动的JavaScript运行环境。进行国际化首先需要准备页面,页面一般创建放在src/view目录下,然后页面需要注册router。vue-i18n 国际化。...
·
VUE项目
首先我们需要创建一个vue项目。然后在创建vue项目之前,我们本地需要安装nodeJs和git。
Git之前下载安装就好,只是基本的命令。
什么是nodeJs? Node.js就是这样一个服务器端的、非阻断式I/O的、事件驱动的JavaScript运行环境。
进行国际化
首先需要准备页面,页面一般创建放在src/view目录下,然后页面需要注册router。
vue-i18n 国际化。
1、安装
npm install vue-i18n
2、在main.js中引入并使用
import VueI18n from 'vue-i18n'
Vue.use(VueI18n)
// 使用多文件管理不同的语言是一个好习惯:
const i18n = new VueI18n({
// locale: LangStorage.getLang('zh'), // 语言标识,后面会用做切换和将用户习惯存储到本地浏览器
locale: 'zh', // 语言标识
messages: {
'zh': require('./common/lang/zh'),
'en': require('./common/lang/en')
}
3、创建多语言的文件夹和js文件
我是在src下创建了common目录和lang子级目录,然后新建了zh.js和en.js两个js文件。
en.js文件内容:
module.exports = {
language: {
name: '中文'
},
navbar: {
home: 'home',
introduction: 'introduction',
contact: 'contact'
}
}
zh.js文件内容:
module.exports = {
language: {
name: 'English'
},
navbar: {
home: '首页',
introduction: '简介',
contact: '联系我们'
}
}
上面的name语言之所以是反的,是因为切换按钮的文字显示需要是反,即英文页面显示中文切换按钮,中文页面显示英文切换按钮。
4、在html中使用i18n
随便找个地:
<p>{{ $t('language.navbar.contact') }}</p>
即可以显示zh.js中的contact,之所以是zh,这是main.js中初始化时的默认语言配置。
5、变更语言
随便建个按钮,绑定一个事件,在methods下加个函数并调用:
changeLocale() {
let locale = this.$i18n.locale
locale === 'zh' ? this.$i18n.locale = 'en' : this.$i18n.locale = 'zh'
// LangStorage.setLang(this.$i18n.locale) //后面会用做切换和将用户习惯存储到本地浏览器
}
可以点击切换语言了。
6、存储用户习惯到cookies做默认设置
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献1条内容
所有评论(0)