使用vue 国际化i18n 实现多实现语言切换功能


Posted in Javascript onOctober 11, 2018

安装

npm install vue-i18n

新建一个文件夹 i18n ,内新建 en.js zh.js index.js 三个文件

准备翻译信息

en.js

export default {
 home: {
 helloworld: "hello workd !"
 }
};

zh.js

export default {
 home: {
 helloworld: "你好世界"
 }
};

index.js

创建Vue-i18n实例

import Vue from "vue";
import VueI18n from "vue-i18n";
import enLocale from "./en";
import zhLocale from "./zh";
Vue.use(VueI18n);
const i18n = new VueI18n({
 locale: localStorage.lang || "zh",
 messages: {
 en: {
  ...enLocale
 },
 zh: {
  ...zhLocale
 }
 }
});
export default i18n;

i18n 挂载到 vue 根实例

main.js

import Vue from "vue";
import App from "./App.vue";
import router from "./router";
import store from "./store";
import i18n from "./assets/i18n/index";
Vue.config.productionTip = false;
Vue.prototype.$i18n = i18n;
new Vue({
 router,
 store,
 i18n,
 render: h => h(App)
}).$mount("#app");

简单的使用

about.vue

<template>
 <div class="about">
 <h1>{{ $t("home.helloworld") }}</h1>
 <button @click="changeLang()">切换英文</button>
 <p>{{hi}}</p>
 </div>
</template>
<script>
export default {
 data: function() {
 return {};
 },
 computed: {
 hi() {
  return this.$t("home.helloworld");
 }
 },
 methods: {
 changeLang() {
  this.$i18n.locale = "en";
 }
 }
};
</script>

注意:

比如说上面的hi 你要通过这种形式来写的时候,不能放在data 里面,因为当语言切换的时候 他是不会变的 ,要写在computed内

总结

以上所述是小编给大家介绍的使用vue 国际化i18n 多实现语言切换功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JS实现带有抽屉效果的产品类网站多级导航菜单代码
Sep 15 Javascript
jquery判断复选框是否选中进行答题提示特效
Dec 10 Javascript
使用jQuery5分钟快速搞定双色表格的简单实例
Aug 08 Javascript
详解ES6中的let命令
Apr 05 Javascript
Bootstrap路径导航与分页学习使用
Feb 08 Javascript
详解JavaScript对象的深浅复制
Mar 30 Javascript
JS实现多张图片预览同步上传功能
Jun 23 Javascript
JavaScript动态加载重复绑定问题
Apr 01 Javascript
微信小程序实现下拉菜单切换效果
Mar 30 Javascript
vue中组件的过渡动画及实现代码
Nov 21 Javascript
Vuex,iView UI面包屑导航使用扩展详解
Nov 04 Javascript
vue跳转同一个组件,参数不同,页面接收值只接收一次的解决方法
Nov 05 Javascript
详解Angular5/Angular6项目如何添加热更新(HMR)功能
Oct 10 #Javascript
Node.js npm命令运行node.js脚本的方法
Oct 10 #Javascript
vue环形进度条组件实例应用
Oct 10 #Javascript
Node.js中读取TXT文件内容fs.readFile()用法
Oct 10 #Javascript
详解Node.js读写中文内容文件操作
Oct 10 #Javascript
angular6的响应式表单的实现
Oct 10 #Javascript
JS原生带缩略图的图片切换效果
Oct 10 #Javascript
You might like
ThinkPHP CURD方法之data方法详解
2014/06/18 PHP
yii框架redis结合php实现秒杀效果(实例代码)
2017/10/26 PHP
使用composer命令加载vendor中的第三方类库 的方法
2019/07/09 PHP
Js之软键盘实现(js源码)
2007/01/30 Javascript
javascript 写类方式之五
2009/07/05 Javascript
javascript 打开页面window.location和window.open的区别
2010/03/17 Javascript
JavaScript中:表达式和语句的区别[译]
2012/09/17 Javascript
jqgrid 表格数据导出实例
2013/11/21 Javascript
JavaScript对Cookie进行读写操作实例
2015/07/25 Javascript
用原生js统计文本行数的简单示例
2016/08/19 Javascript
JavaScript中的ajax功能的概念和示例详解
2016/10/17 Javascript
js点击任意区域弹出层消失实现代码
2016/12/27 Javascript
基于JavaScript实现验证码功能
2017/04/01 Javascript
深入解析koa之中间件流程控制
2019/06/17 Javascript
js实现随机点名器精简版
2020/06/29 Javascript
jQuery列表动态增加和删除的实现方法
2020/11/05 jQuery
Python urllib模块urlopen()与urlretrieve()详解
2013/11/01 Python
Python最火、R极具潜力 2017机器学习调查报告
2017/12/11 Python
python打包成so文件过程解析
2019/09/28 Python
查看jupyter notebook每个单元格运行时间实例
2020/04/22 Python
python基于socket函数实现端口扫描
2020/05/28 Python
python解包用法详解
2021/02/17 Python
德国孕妇装和婴童服装网上商店:bellybutton
2018/04/12 全球购物
微软台湾官方网站:Microsoft台湾
2018/08/15 全球购物
万豪国际住宅与别墅集团:Homes & Villas by Marriott International
2020/10/08 全球购物
简短证婚人证婚词
2014/01/09 职场文书
爱心活动计划书
2014/04/26 职场文书
法院信息化建设方案
2014/05/21 职场文书
销售目标责任书
2014/07/23 职场文书
乡镇民主生活会发言材料
2014/10/20 职场文书
英语通知范文
2015/04/22 职场文书
2015年保育员个人工作总结
2015/05/13 职场文书
初中政治教师教学反思
2016/02/23 职场文书
二年级作文之动物作文
2019/11/13 职场文书
pytorch通过训练结果的复现设置随机种子
2021/06/01 Python
Python使用华为API为图像设置多个锚点标签
2022/04/12 Python