vue-i18n使用ES6语法以及空格换行问题
1.运行报错
报错使用了不恰当的exports
Uncaught TypeError : Cannot assign to read only property 'exports ' of object ' # < Object > '
网上很多教程是写的
//zh.js
module.exports={
part1 : {
name:'姓名',
nation:'地区'
}
part2 : {
gender:'性别'
}
}
//lang.js
import Vue from 'vue';
import VueI18n from 'vue-i18n';
Vue.use(VueI18n);
const messages = {
'zh': require('../lang/zh.js'), // 中文语言包
'en': require('../lang/en.js'), // 英文语言包
}
export default new VueI18n({
locale: 'zh', // set locale 默认显示中文
fallbackLocale: 'en', //如果语言包没有,则默认从英语中抽取
messages: messages // set locale messages
});
使用了module.exports以及require,然后运行可能会报错

点击错误

原因是:The code above is ok. You can mix require and export. You can‘t mix import and module.exports.
在webpack打包的时候,可以在js文件中混用require和export。但是不能混用import 以及module.exports。
因为webpack 2中不允许混用import和module.exports,说是要统一使用es6语法
所以 ,解决方法:
require改成import
module.exports改成export default
具体可参照 vue-i18n安装配置运行 2,4点
nice!
2.字段的空格,换行处理
使用 v-html将js文件中的字段中包含的符号解析成html能解析的样子
v-html用于输出html,将内容当成html标签解析后展示
空格
zh.js
export default{
part1 : {
name:'姓 名',
nation:'地区'
}
part2 : {
gender:'性别'
}
}
show.vue
//wrong
<div>
<p>$t{{part1.name}}</p> //展示为姓 名
</div>
//right
<div>
<p v-html='$t(part1.name)'></p> //展示为姓 名
</div>
换行
zh.js
export default{
part1 : {
name:'姓<br>名',
nation:'地区'
}
part2 : {
gender:'性别'
}
}
show.vue
//wrong
<div>
<p>$t{{part1.name}}</p> //展示为姓<br>名
</div>
//right
<div>
<p v-html='$t(part1.name)'></p>
//展示为
// 姓
// 名
</div>
3.匹配多语言某一项
zh.js
export default{
part1 : {
app0:'你好',
app1:'您好'
}
}
show.vue
//item.e = 0
<div>
<p>{{$t(`part1.app${item.e}`)}}</p> //展示为 你好
</div>
vue-i18n使用ES6语法以及空格换行问题的更多相关文章
- Webstorm添加新建.vue文件功能并支持高亮vue语法和es6语法
转载:https://blog.csdn.net/qq_33008701/article/details/56486893 Webstorm 添加新建.vue文件功能并支持高亮vue语法和es6语法 ...
- webstorm中.vue报错(es6语法报错)-转
1.webstorm中es6语法报错,解决方法: 打开 Settings => Languages & Frameworks => Javascript把 Javascript L ...
- Webstorm 添加新建.vue文件功能并支持高亮vue语法和es6语法
添加新建.vue文件功能 ①Webstorm 右上角File-Plugins 搜索vue如果没有就去下载 点击serch in repositories ②点击安装vue.js ③安装成功后点击右下角 ...
- vue项目兼容es6语法跟IE浏览器
要安装babel-polyfill和es6-promise.用来兼容ie和es6: 附赠链接下载:https://babeljs.io/docs/en/6.26.3/babel-polyfill:ht ...
- .vue文件在webstorm中es6语法报错解决方法
1 语法支持es6设置 Preferences > Languages & Frameworks > JavaScript 把 Javascript Language versio ...
- webstorm中es6语法报错,.vue文件中es6语法报错
1.webstorm中es6语法报错,解决方法: 打开 Settings => Languages & Frameworks => Javascript把 Javascript L ...
- vue 2.0 无法编译ES6语法
# vue2.0 webpack 无法编译 ES6 语法 之前在使用 vue 1.x 时用 vue-loader@8.0.0 版本可以正常打包vue的代码,包括ES6语法也能正常转为ES5语法,但是当 ...
- .Vue 文件 ES6 语法 webstorm 中的一个识别Bug
webstorm 2017 版本中即使安装了vue template file 设置了 js 语言为 es6 语法仍旧会出现识别不了划线的情况,苦寻很久,最后解决方式如下 <script typ ...
- 如何在webpack开发中利用vue框架使用ES6中提供的新语法
在webpack中开发,会遇到一大推问题,特别是babel6升级到babel7,要跟新一大推插件,而对于安装babel的功能就是在webpack开发中,vue中能够是用ES6的新特性: 例如ES6中的 ...
随机推荐
- Linux i2c子系统(二) _通过i2c-dev.c访问设备的方法
另外一种驱动 应用层除了使用上述的使用i2c_driver接口来访问i2c设备,Linux内核还提供了一种简单粗暴的方式--直接通过虚拟i2c设备驱动的方式,即上一篇中的i2c-dev提供的方式,这种 ...
- [转] 又踩到了crontab的老坑,特意记录下。
http://xiachaofeng.iteye.com/blog/1405184 今天遇见一个问题,crontab的定时任务不能自动执行,但是手动执行脚本一直能成功.查到最后,发现是脚本里用了系统的 ...
- A - The Water Problem
In Land waterless, water is a very limited resource. People always fight for the biggest source of w ...
- plsql中文乱码
一.关于PLSQL无法正确显示中文 刚才下载安装了PLSQL Developer 9.0.0.1601 汉化绿色版,执行SQL查询语句,发现显示的数据中只要有中文都会以?表示. 原因:客户端跟服务器的 ...
- oracle 自定义比较函数
1>自定义比较函数,targetVal的值为字符串,例如:“>=90”,"2~8"等范围格式,dataVal值为字符串. create or replace funct ...
- SetWindowPos 和Z序
参考文档:http://www.cnblogs.com/findumars/p/3948315.html SetWindowPos(hWnd: HWND; {窗口句柄}hWndInsertAfter: ...
- leetcode-Evaluate the value of an arithmetic expression in Reverse Polish Notation
leetcode 逆波兰式求解 Evaluate the value of an arithmetic expression in Reverse Polish Notation. Valid ope ...
- [No000017F]如何监控注册表的修改
今天我们将向您展示如何使用我们最喜欢的工具之一Proc Mon,在您更改PC上的组策略设置时查看编辑的注册表项. 使用Proc Mon查看组策略对象修改的注册表设置 您要做的第一件事就是从Sys In ...
- spark-sql(spark sql cli)客户端集成hive
1.安装hadoop集群 参考:http://www.cnblogs.com/wcwen1990/p/6739151.html 2.安装hive 参考:http://www.cnblogs.com/w ...
- linux文件系统变为只读解决
linux控制台显示文件系统变为只读,需输密码或者按ctrl+d结束 输入root密码后执行fsck -y /dev/sda1,fsck -y /dev/sda2和fsck -y /dev/sda3等 ...