使用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小括号“()”的多义性
Dec 03 Javascript
jquery批量设置属性readonly和disabled的方法
Jan 24 Javascript
JQuery EasyUI的使用
Feb 24 Javascript
基于ajax与msmq技术的消息推送功能实现代码
Dec 26 Javascript
详解使用nvm安装node.js
Jul 18 Javascript
详解vue-router 路由元信息
Sep 13 Javascript
Vue-Router模式和钩子的用法
Feb 28 Javascript
vue项目动态设置页面title及是否缓存页面的问题
Nov 08 Javascript
JavaScript实现随机点名器实例详解
May 07 Javascript
jQuery带控制按钮轮播图插件
Jul 31 jQuery
VUE中鼠标滚轮使div左右滚动的方法详解
Dec 14 Vue.js
vue3 watch和watchEffect的使用以及有哪些区别
Jan 26 Vue.js
详解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
第七节 类的静态成员 [7]
2006/10/09 PHP
隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法
2007/02/22 PHP
PHP处理excel cvs表格的方法实例介绍
2013/05/13 PHP
测试你的JS的掌握程度的代码
2009/12/09 Javascript
JS实现简单的Canvas画图实例
2013/07/04 Javascript
Javascript中call的两种用法实例
2013/12/13 Javascript
javascript实现十六进制颜色值(HEX)和RGB格式相互转换
2014/06/20 Javascript
一个JavaScript递归实现反转数组字符串的实例
2014/10/14 Javascript
详解nodejs 文本操作模块-fs模块(二)
2016/12/22 NodeJs
JavaScript cookie详解及简单实例应用
2016/12/31 Javascript
ES7中利用Await减少回调嵌套的方法详解
2017/11/01 Javascript
Vue多种方法实现表头和首列固定的示例代码
2018/02/02 Javascript
react 实现页面代码分割、按需加载的方法
2018/04/03 Javascript
socket在egg中的使用实例代码详解
2019/05/30 Javascript
JS数组方法reverse()用法实例分析
2020/01/18 Javascript
Vue实现兄弟组件间的联动效果
2020/01/21 Javascript
Win10下Python环境搭建与配置教程
2016/11/18 Python
用Python实现KNN分类算法
2017/12/22 Python
Python自动化之数据驱动让你的脚本简洁10倍【推荐】
2019/06/04 Python
pyqt5 实现工具栏文字图片同时显示
2019/06/13 Python
python opencv实现证件照换底功能
2019/08/19 Python
python requests更换代理适用于IP频率限制的方法
2019/08/21 Python
Python Django模板之模板过滤器与自定义模板过滤器示例
2019/10/18 Python
Python找出列表中出现次数最多的元素三种方式
2020/02/24 Python
Python实现在Windows平台修改文件属性
2020/03/05 Python
css3设置box-pack和box-align让div里面的元素垂直居中
2014/09/01 HTML / CSS
浅谈html5增强的页面元素
2016/06/14 HTML / CSS
如何在发生故障的节点上重新安装 SQL Server
2013/03/14 面试题
优秀员工评语
2014/02/10 职场文书
希特勒经典演讲稿
2014/05/19 职场文书
公安机关纪律作风整顿个人剖析材料材料
2014/10/10 职场文书
网站出售协议书范文
2014/10/10 职场文书
学籍证明模板
2014/11/21 职场文书
2016国庆节67周年寄语
2015/12/07 职场文书
mysql sum(if())和count(if())的用法说明
2022/01/18 MySQL
使用CSS实现六边形的图片效果
2022/08/05 HTML / CSS