zoukankan      html  css  js  c++  java
  • i18n 中英文翻译

    执行以下命令安装vue 国际化插件vue-i18n

    1 npm install vue-i18n --save

    执行以下命令安装 js-cookie

    npm install js-cookie --save

    在src目录下 新建lang文件夹 在lang文件夹下存放 语言脚本 如下:

     en.js

     1 export default {
     2     // 导航栏
     3     linkArr: [
     4         {content: 'Homepage', id: 'HomePage'},
     5         {content: 'Product', id: 'Product'},
     6         {content: 'information', id: 'InforMation'},
     7         {content: 'AboutUs', id: 'About'},
     8         {content: 'JoinUs', id: 'Join'}
     9         // {content: 'English', id: 'English'}
    10     ]
    11 }

    zh.js

     1 export default {
     2     // 导航栏
     3     linkArr: [
     4         {content: '首页', id: 'HomePage'},
     5         {content: '产品', id: 'Product'},
     6         {content: '资讯', id: 'InforMation'},
     7         {content: '关于我们', id: 'About'},
     8         {content: '加入我们', id: 'Join'}
     9         // {content: 'English', id: 'English'}
    10     ]
    11 }

    index.js

     1 import Vue from 'vue'
     2 import VueI18n from 'vue-i18n'
     3 import Cookies from 'js-cookie'
     4 // import locale from 'element-ui/lib/locale';
     5 import elementEnLocale from 'element-ui/lib/locale/lang/en' // element-ui lang
     6 import elementZhLocale from 'element-ui/lib/locale/lang/zh-CN'// element-ui lang
     7 import enLocale from './en'
     8 import zhLocale from './zh'
     9  
    10 Vue.use(VueI18n);
    11  
    12 const messages = {
    13   en: {
    14     ...enLocale,
    15     ...elementEnLocale
    16   },
    17   zh: {
    18     ...zhLocale,
    19     ...elementZhLocale
    20   }
    21 };
    22 const i18n = new VueI18n({
    23     locale: Cookies.get('language') || 'en',
    24     messages
    25 })
    26 export default i18n

    main.js

     1 import Vue from 'vue'
     2 import App from './App'
     3 import router from './router'
     4 import ElementUI from 'element-ui'
     5 import 'element-ui/lib/theme-chalk/index.css'
     6 import i18n from './lang'
     7  
     8 Vue.use(ElementUI, {
     9     size: 'medium',
    10     i18n: (key, value) => i18n.t(key, value)
    11 });
    12  
    13 new Vue({
    14     router,
    15     store,
    16     i18n,
    17     render: h => h(App)
    18 }).$mount("#app");

    xxx.vue

     1 <template>
     2    <ul>
     3       <router-link :to="{path: '/' + item.id}" v-for="(item,index) in $t('linkArr')" :key="index">
     4           <div class="line" v-if="5===index"></div>
     5       </router-link>
     6       <li @click="liClick1">
     7           <span>English</span>
     8       </li>
     9    </ul>
    10 </template>
    11  
    12 methods: {
    13     liClick1() {
    14        if (this.$i18n.locale === 'zh') {
    15           this.$i18n.locale = 'en';
    16           // 将新语言保存到全局状态管理
    17           this.$store.dispatch('update_current_lang', 'en');
    18           cookie.set('language', 'en');
    19         }else {
    20           this.$i18n.locale = 'zh';
    21           // 将新语言保存到全局状态管理
    22           this.$store.dispatch('update_current_lang', 'zh');
    23           cookie.set('language', 'zh');
    24         }
    25     }
    26 }

  • 相关阅读:
    JDBC 实例--JDBC通过工具类DBUtil连接到数据库,让我们不再恐惧操作数据库
    揭开JDBC的神秘面纱,让JDBC数据库的连接参数不再神秘
    实验六 最小代价生成树
    实验五 背包问题和带时限的作业排序
    实验四 图的遍历算法设计与实现
    实验三 跳表算法设计与实现
    实验二 伸展树算法设计与实现
    算法实例一 算法问题求解基础--欧几里得递归算法和递归算法
    2013年 蓝桥杯预赛 java 本科A 题目
    java常用开发工具类之 图片水印,文字水印,缩放,补白工具类
  • 原文地址:https://www.cnblogs.com/xiaozhu-zhu/p/11946870.html
Copyright © 2011-2022 走看看