1、我们得先有开发环境,先有项目跑起来,我推荐如果是喜欢用 vue 的小伙伴,可以尝试 vue-cli 官方脚手架。这边有我整理的一个脚手架 demo ,有助于你快速的进行 vue 模块化开发。
2、我们需要安装 vue-i18n, 推荐 npm 包依赖:
$ npm install vue-i18n
当然你也可以这样:
3、注入 vue 实例中,项目中实现调用 api 和 模板语法
这边我是顺着使用 npm 安装依赖进行。先在 main.js 中引入 vue-i18n。
import VueI18n from 'vue-i18n'Vue.use(VueI18n)const i18n = new VueI18n({locale: 'zh-CN', // 语言标识//this.$i18n.locale // 通过切换locale的值来实现语言切换messages: {'zh-CN': require('./common/lang/zh'), // 中文语言包'en-US': require('./common/lang/en') // 英文语言包}})new Vue({i18n})
export const m = {
music: ‘Music’,//网易云音乐
findMusic: ‘FIND MUSIC’,//发现音乐
myMusic: ‘MY MUSIC’,//我的音乐
friend: ‘FRIEND’,//朋友
musician: ‘MUSICIAN’,//音乐人
download: ‘DOWNLOAD’//下载客户端
}
/*** 切换语言*/changeLangEvent() {this.$confirm('确定切换语言吗?', '提示', {confirmButtonText: '确定',cancelButtonText: '取消',type: 'warning'}).then(() => {if ( this.lang === 'zh-CN' ) {this.lang = 'en-US';this.$i18n.locale = this.lang;//关键语句}else {this.lang = 'zh-CN';this.$i18n.locale = this.lang;//关键语句}}).catch(() => {this.$message({type: 'info',});});}
三、vue-i18n 数据渲染的模板语法
{{$t(‘m.music’)}}
