使用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 相关文章推荐
用javascript实现读取txt文档的脚本
Jul 20 Javascript
Jquery数独游戏解析(一)-页面布局
Nov 05 Javascript
再论Javascript下字符串连接的性能
Mar 05 Javascript
jQuery中fadeIn、fadeOut、fadeTo的使用方法(图片显示与隐藏)
May 08 Javascript
SuperSlide2实现图片滚动特效
Jun 20 Javascript
js实现照片墙功能实例
Feb 05 Javascript
基于JavaScript实现自动更新倒计时效果
Dec 19 Javascript
微信小程序 开发经验整理
Feb 15 Javascript
解决layui checkbox 提交多个值的问题
Sep 02 Javascript
浅谈监听单选框radio改变事件(和layui中单选按钮改变事件)
Sep 10 Javascript
js回调函数仿360开机
Dec 26 Javascript
关于uniApp editor微信滑动问题
Jan 15 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
咖啡知识大全
2021/03/03 新手入门
php遍历数组的4种方法总结
2014/07/05 PHP
php+ajax 实现输入读取数据库显示匹配信息
2015/10/08 PHP
Linux+Nginx+MySQL下配置论坛程序Discuz的基本教程
2015/12/23 PHP
php开发最强大的IDE编辑的phpstorm 2020.2配置Xdebug调试的详细教程
2020/08/17 PHP
PhpStorm2020 + phpstudyV8 +XDebug的教程详解
2020/09/17 PHP
简单三步,搞掂内存泄漏
2007/03/10 Javascript
用jQuery模拟页面加载进度条的实现代码
2011/12/19 Javascript
js实现进度条的方法
2015/02/13 Javascript
JavaScript原生对象之Number对象的属性和方法详解
2015/03/13 Javascript
Javascript中arguments用法实例分析
2015/06/13 Javascript
jQuery超酷平面式时钟效果代码分享
2020/03/30 Javascript
基于JS代码实现实时显示系统时间
2016/06/16 Javascript
JQuery EasyUI的一些常用组件
2017/07/12 jQuery
js基于FileSaver.js 浏览器导出Excel文件的示例
2017/08/15 Javascript
vue-cli脚手架config目录下index.js配置文件的方法
2018/03/13 Javascript
JS实现遍历不规则多维数组的方法
2018/03/21 Javascript
vue-cli脚手架-bulid下的配置文件
2018/03/27 Javascript
小程序日历控件使用方法详解
2018/12/29 Javascript
vue 取出v-for循环中的index值实例
2019/11/09 Javascript
JavaScript事件冒泡机制原理实例解析
2020/01/14 Javascript
JS highcharts动态柱状图原理及实现
2020/10/16 Javascript
[05:08]2014DOTA2国际邀请赛 Hao专访复仇的胜利很爽
2014/07/15 DOTA
Python urlopen 使用小示例
2008/09/06 Python
python命令行解析之parse_known_args()函数和parse_args()使用区别介绍
2018/01/24 Python
Python实现图片拼接的代码
2018/07/02 Python
如何使用Python自动控制windows桌面
2019/07/11 Python
用python3读取python2的pickle数据方式
2019/12/25 Python
TensorFlow2.0矩阵与向量的加减乘实例
2020/02/07 Python
广州某公司软件工程师面试题
2014/12/22 面试题
后勤岗位职责
2013/11/26 职场文书
3的组成教学反思
2014/04/30 职场文书
优秀大学生自荐信
2014/06/09 职场文书
公务员四风问题对照检查材料整改措施
2014/09/26 职场文书
个人职业及收入证明
2014/10/13 职场文书
部门经理助理岗位职责
2015/04/13 职场文书