使用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 style 中visibility和display之间的区别
Jan 22 Javascript
jquery-easyui关闭tab自动切换到前一个tab
Jul 29 Javascript
PHP使用方法重载实现动态创建属性的get和set方法
Nov 17 Javascript
jquery读取xml文件实现省市县三级联动的方法
May 29 Javascript
js获取滚动距离的方法
May 30 Javascript
js立即执行函数: (function ( ){})( ) 与 (function ( ){}( )) 有什么区别?
Nov 18 Javascript
JS代码随机生成姓名、手机号、身份证号、银行卡号
Apr 27 Javascript
基于javascript实现按圆形排列DIV元素(一)
Dec 02 Javascript
vue使用xe-utils函数库的具体方法
Mar 06 Javascript
AngularJs1.x自定义指令独立作用域的函数传入参数方法
Oct 09 Javascript
Vue实现拖放排序功能的实例代码
Jul 08 Javascript
js实现随机点名器精简版
Jun 29 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
JAVA/JSP学习系列之六
2006/10/09 PHP
PHP JSON格式数据交互实例代码详解
2011/01/13 PHP
php简单判断文本编码的方法
2015/07/30 PHP
thinkphp5.1 文件引入路径问题及注意事项
2018/06/13 PHP
浅谈laravel中的关联查询with的问题
2019/10/10 PHP
如何做到打开一个页面,过几分钟自动转到另一页面
2007/04/20 Javascript
javascript设计模式 封装和信息隐藏(上)
2012/07/24 Javascript
使用JavaScript的ActiveXObject对象检测应用程序是否安装的方法
2014/04/15 Javascript
javaScript中两个等于号和三个等于号之间的区别介绍
2014/06/27 Javascript
jQuery中last()方法用法实例
2015/01/06 Javascript
JS组件系列之Bootstrap table表格组件神器【二、父子表和行列调序】
2016/05/10 Javascript
EditPlus 正则表达式 实战(3)
2016/12/15 Javascript
Vue.js教程之axios与网络传输的学习实践
2017/04/29 Javascript
Node.js 异步异常的处理与domain模块解析
2017/05/10 Javascript
vue实现前进刷新后退不刷新效果
2018/01/26 Javascript
Bootstrap Table中的多选框删除功能
2018/07/15 Javascript
Vue-router 切换组件页面时进入进出动画方法
2018/09/01 Javascript
layui实现二维码弹窗、并下载到本地的方法
2019/09/25 Javascript
解决vue v-for src 图片路径问题 404
2019/11/12 Javascript
node.js使用yargs处理命令行参数操作示例
2020/02/11 Javascript
微信小程序实现翻牌抽奖动画
2020/09/21 Javascript
[01:37]PWL S2开团时刻DAY1&2——这符有毒
2020/11/20 DOTA
python密码错误三次锁定(实例讲解)
2017/11/14 Python
python删除文本中行数标签的方法
2018/05/31 Python
python机器学习包mlxtend的安装和配置详解
2019/08/21 Python
Python API自动化框架总结
2019/11/12 Python
查看keras的默认backend实现方式
2020/06/19 Python
Python爬虫爬取糗事百科段子实例分享
2020/07/31 Python
python pyg2plot的原理知识点总结
2021/02/28 Python
通过一张图教会你CSS3倒影的实现
2017/09/26 HTML / CSS
Ralph Lauren英国官方网站:Ralph Lauren UK
2018/04/03 全球购物
几道PHP面试题
2013/04/14 面试题
初二政治教学反思
2014/01/12 职场文书
家长会主持词开场白
2014/03/18 职场文书
党的群众路线教育实践活动党员个人整改措施
2014/10/27 职场文书
MySQL 分页查询的优化技巧
2021/05/12 MySQL