vue-i18n vue-cli项目中实现国际化 多语言切换功能 一
vue-cli项目中引入vue-i18n
安装:
npm install vue-i18n可参考vue-i18n官网文档
main.js中引入:
import Vue from 'vue'
import VueI18n from 'vue-i18n'
Vue.use(VueI18n)
配置语言包(main.js):
const i18n = new VueI18n({
locale: 'zh-CN', // 语言标识, 通过切换locale的值来实现语言切换,this.$i18n.locale
messages: {
'zh-CN': require('./common/lang/zh'), // 中文语言包
'en-US': require('./common/lang/en') // 英文语言包
}
})
new Vue({
el: '#app',
i18n, // 加入
router,
store,
components: { App },
template: '<App/>'
})
语言相关包(zh.js、en.js):
zh.js:
export const lang = {
menu: [
{name: '首页', path: ''},
{name: '企业简介', path: ''},
{name: '企业舆情', path: ''},
{name: '标签管理', path: ''},
{name: '采集管理', path: ''},
{name: '关于我们', path: ''},
{name: '哈哈哈哈', path: ''}
],
login: '登录',
register: '注册',
welcome: '欢迎',
logout: '退出'
}
en.js:
export const lang = {
menu: [
{name: 'HomePage', path: ''},
{name: 'BusinessIntro', path: ''},
{name: 'BusinessInfo', path: ''},
{name: 'TagManage', path: ''},
{name: 'CollectManage', path: ''},
{name: 'AboutUs', path: ''},
{name: 'hahahaha', path: ''}
],
login: 'login',
register: 'register',
welcome: 'welcome',
logout: 'logout'
}
语言切换:
this.$i18n.locale = 'en-US'// 切换成英文
this.$i18n.locale = 'zh-CN'// 切换成中文
使用(同于vue中对于文字数据的渲染,有以“{{ }}”或v-text、v-html等的形式,同样的使用语言国际化(vue-i18n)后,依旧可以沿用):
<el-menu-item
v-for="(item,index) in $t('lang.menu')"
:key="index"
:index="item.path"
:route="item.path">{{ item.name }}</el-menu-item>
<router-link
class="eff"
to="/login">{{ $t('lang.login') }}</router-link>
<router-link to="/register">{{ $t('lang.register') }}</router-link>
eg:
v-text:
<span v-text=”$t(‘lang.welcome’)”></span>
{{ }}:
<span>{{ $t(‘lang.welcome’) }}</span>
以上为基本用法,进阶用法高级用法见后续相关文章,这里主要是不让大家一下接触太多而混淆
原创,转载请注明出处微笑空间站
vue-i18n vue-cli项目中实现国际化 多语言切换功能 一的更多相关文章
- 在进行vue的学习,项目中需要引入bootstrap、jquery的步骤。
在进行vue的学习,项目中需要引入bootstrap.jquery的步骤. 一.引入jQuery 在当前项目的目录下(就是package.json),运行命令 cnpm install jquery ...
- Vuex内容解析和vue cli项目中使用状态管理模式Vuex
中文文档:vuex官方中文网站 一.vuex里面都有些什么内容? const store = new Vuex.Store({ state: { name: 'weish', age: }, gett ...
- Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
vee-validate 是为 Vue.js 量身打造的表单校验框架,允许您校验输入的内容并显示对应的错误提示信息.它内置了很多常见的校验规则,可以组合使用多种校验规则,大部分场景只需要配置就能实现开 ...
- Vue笔记:在项目中使用 SCSS
背景概述 1. CSS预处理器 css预处理器定义了一种新的编程语言,编译后成正常的CSS文件.为CSS增加一些编程的特性,无需考虑浏览器的兼容问题,让CSS更加简洁,适应性更强,可读性更佳,更易于代 ...
- vue cli3以上的项目中如何使用axois请求本地json文件
首先明确一点,在vue cli3以上的版本中,存放静态资源的文件是public 我刚开始以为是和vue cli2一样需要放在static文件夹下,但是项目中没有这个文件夹,我就自己创建了一个,结果请求 ...
- Vue项目中实现文件下载到本地的功能
公司业务需求,我需要实现一个合同模板,自定义输入内容后生成合同随后导出下载合同.(自定义部分用到的是) 为了实现这个文件下载到本地的功能,真的是废了九牛二虎之力,以至于差点放弃(主要还是自己菜).刚开 ...
- Vue + Element-ui实现后台管理系统(3)---面包屑 + Tag标签切换功能
面包屑 + Tag标签切换功能 有关后台管理系统之前写过两遍博客,看这篇之前最好先看下这两篇博客.另外这里只展示关键部分代码,项目代码放在github上: mall-manage-system 1.V ...
- 在 vue-cli 项目中 使用elementUI 的“自定义主题”功能
1.安装elementUI $ npm i element-ui -S 2.安装主题工具 npm i element-theme -g 3.安装chalk主题 npm 安装 npm i element ...
- SSH 项目中 使用websocket 实现网页聊天功能
参考文章 :java使用websocket,并且获取HttpSession,源码分析 http://www.cnblogs.com/zhuxiaojie/p/6238826.html 1.在项 ...
随机推荐
- Windows server R2 2008上部署gogs git
所需的环境 1. 安装mysql 安装路径:F:\MySQL Server 5.7 2. 安装gogs ...
- 2018.8.19 mybatis 环境搭建---配置mysql 。(Windows环境下面)
安装mysql Install/Remove of the Service Denied!错误的解决办法 在windos 的cmd下安装mysql 在mysql的bin目录下面执行: mysqld - ...
- Java 执行系统命令工具类(commons-exec)
依赖jar <!-- 可以在JVM中可靠地执行外部进程的库. --> <dependency> <groupId>org.apache.commons</gr ...
- CentOS上安装mongodb
安装mongodb pymongo修改yum源vi /etc/yum.repos.d/10gen.repo[10gen]name=10gen Repositorybaseurl=http://down ...
- 手动安装Apache+PHP+MYSQL及环境配置
先准备好软件: Apache官方下载地址:apache_2.0.55-win32-x86-no_ssl.msi,更多版本在这里: php官方下载地址:php-5.0.5-Win32.zip,更多镜像下 ...
- Java框架 面试题总结
一. Struts1.x 4 1. struts1优缺点,为什么要使用struts1 4 2. Struts1核心组件 4 3. Strust1请求处理流程 工作原理 4 4. Struts1线程安 ...
- Linux赋予普通用户root权限
本文以新建用户admin来举例,请自行替换自己需要的用户 方法一: vi编辑 /etc/sudoers 文件,找到 root ALL=(ALL) ALL,在下面添加一行,如下所示: ## ...
- JavaScript 十行原生代码实现复制内容到剪贴板
十行原生代码,不引入任何 JS 库,目前大部分浏览器与移动平台都可兼容. function copyToClipboard(value, callback) { var textarea = docu ...
- js、jquery中全局替换replace
str.replace(/需要替换的/g,"新字符串") //此处使用正则表达式
- 微信 php 获取token 第二次失败解决办法
第一次成功了,第二次总是失败,很简单,session问题 clearstatcache(); $_SESSION = ''; $_COOKIE = ''; //获得参数 signature nonce ...