vue+iview+less+echarts实战项目总结


Posted in Javascript onFebruary 22, 2018

首先我们先分享一下源码:https://github.com/kunfan96/vue-admin

对于我这种刚开始用Vue做项目的菜鸟来说在组件数据定义方面犯了很多错误,尤其是在这个页面

vue+iview+less+echarts实战项目总结

在进行数据回选的时候自己重定义已经定好的数据,导致数据非常杂乱无章,具体在storeDetail.vue的14--321行,感觉这么多数据非常有必要的进行裁剪,用js进行运算把数据补充完整,这里相对把后台的任务减轻了很多,只是额外增加前端渲染数据的量

父子组件数据通讯问题

刚开始写Modal的时候对于Modal的开关modal父子组件共享的数据,然后在关闭的时候子组件改变了父组件传递的数据会报错,也就是props的值

vue+iview+less+echarts实战项目总结

在这里有2个解决方案,一个是用vuex共享Modal的开关(写起来有点绕,代码也不简洁),另外一个最好的方法是建立一个mixins文件夹,在mixins的js进行操作,关键代码--->mixins/closeModal.js--->this.$emit('on-cancel',false),子组件通过emit使父组件发生on-cancel,响应一个事件,这样写可以让其他多个子组件使用到Modal共用代码

组件命名方式

在这里我自己定义了文件夹采用了大驼峰命名法,例如文件夹Store,Shop,对于文件以及变量的命名采用小驼峰命名法,如果storeDetail.vue,parcelList.vue

多用flex

2018年flex将会是主流,兼容性问题也没必要理睬,还有多注意grind布局,可能也有流行了

多用懒加载

使用懒加载方便在低带宽时候能够带来更好的用户体验,在参考iview admin代码我把懒加载的用法统一为

{
 path:"/parcel-list",
 meta:{
  group:"parcel",
  item:"parcel-list"
 },
 component: resolve =>import('@/pages/Parcel/parcelList')
 }

侧边栏刷新问题

vue+iview+less+echarts实战项目总结

在这里要注意到组件给了2个绑定的变量active-name,open-names,这里我们在路由设置的时候添加

meta:{
  group:"",
  item:""
 }

通过this.$route.meta.group,this.$route.meta.item就可以与active-name,open-names进行匹配实现无刷新操作

记得多npm run build

iview这个组件有点问题,有时候就是修改Modal的样式我明明在style(不带scoped)标签修改之后npm run dev样式修改成功,可是build之后样式就又重新恢复,后来把样式放在静态文件夹中才可以修改成功,还有就是表格居中build之后之后不能居中,总之,多build问题早点发现早点解决是好事(切莫佛系~~~)

Echarts在VUE的使用

在这里有个坑,在echarts实例化的时候在chart.vue有段代码

<div :id="chart.id"></div>
 let myChart=this.$echarts.init(document.getElementById(this.chart.id))

在这里注意到有个id,我在这里之所以这样做,把组件的id设为变量主要是echarts官网文档写到在网页中echarts实例化的div的id具有唯一性,由于我这个chars组件需要多次被被同一组件调用多次所以是只能将id设为一个变量(这个真的坑,调了很多次上官方文档看了好几次才知道...).另外最好把把echars的数据封装一遍

多写公用组件

框架这种东西本质就是减少代码,公用组件写好了调用的时候使用数据渲染就可以了,这样就能大大减少代码量,也符合MVVM的思想

Javascript 相关文章推荐
JS中==与===操作符的比较
Mar 21 Javascript
JQuery 国际象棋棋盘 实现代码
Jun 26 Javascript
基于jquery实现的类似百度搜索的输入框自动完成功能
Aug 23 Javascript
JQuery获取与设置HTML元素的内容或文本的实现代码
Jun 20 Javascript
node.js回调函数之阻塞调用与非阻塞调用
Nov 13 Javascript
JavaScript 正则表达式中global模式的特性
Feb 25 Javascript
jquery获取复选框的值的简单实例
May 26 Javascript
JS版微信6.0分享接口用法分析
Oct 13 Javascript
Angularjs 与 bower安装和使用详解
May 11 Javascript
Webpack如何引入bootstrap的方法
Jun 17 Javascript
angular基于ng-alain定义自己的select组件示例
Feb 23 Javascript
JS如何在不同平台实现多语言方式
Jul 16 Javascript
在vscode中统一vue编码风格的方法
Feb 22 #Javascript
vue webpack打包优化操作技巧
Feb 22 #Javascript
vue和react等项目中更简单的实现展开收起更多等效果示例
Feb 22 #Javascript
Vue 2.5.2下axios + express 本地请求404的解决方法
Feb 21 #Javascript
把vue-router和express项目部署到服务器的方法
Feb 21 #Javascript
浅谈在vue中用webpack打包之后运行文件的问题以及相关配置方法
Feb 21 #Javascript
浅谈webpack打包过程中因为图片的路径导致的问题
Feb 21 #Javascript
You might like
PHP模拟SQL Server的两个日期处理函数
2006/10/09 PHP
php函数指定默认值方法的小例子
2013/12/04 PHP
PHP中如何实现常用邮箱的基本判断
2014/01/07 PHP
ThinkPHP CURD方法之order方法详解
2014/06/18 PHP
Swoole 5将移除自动添加Event::wait()特性详解
2019/07/10 PHP
jQuery textarea的长度进行验证
2009/05/06 Javascript
window.name代替cookie的实现代码
2010/11/28 Javascript
浅析onsubmit校验表单时利用ajax的return false无效问题
2013/07/10 Javascript
php与js的区别是什么
2013/08/05 Javascript
jQuery插件 selectToSelect使用方法
2013/10/02 Javascript
Nodejs极简入门教程(三):进程
2014/10/27 NodeJs
js实现的全国省市二级联动下拉选择菜单完整实例
2015/08/17 Javascript
JS实现n秒后自动跳转的两种方法
2020/11/30 Javascript
JavaScript仿微博输入框效果(案例分析)
2016/12/06 Javascript
canvas实现十二星座星空图
2017/02/14 Javascript
jQuery插件HighCharts绘制简单2D柱状图效果示例【附demo源码】
2017/03/21 jQuery
Bootstrap 设置datetimepicker在屏幕上面弹出设置方法
2017/03/21 Javascript
BootstrapTable加载按钮功能实例代码详解
2017/09/22 Javascript
node.js利用socket.io实现多人在线匹配联机五子棋
2018/05/31 Javascript
如何从头实现一个node.js的koa框架
2019/06/17 Javascript
webpack DllPlugin xxx is not defined解决办法
2019/12/13 Javascript
基于JavaScript判断两个对象内容是否相等
2020/01/10 Javascript
JS校验与最终登陆界面功能完整示例
2020/01/13 Javascript
vue实现div可拖动位置也可改变盒子大小的原理
2020/09/16 Javascript
Python异常处理总结
2014/08/15 Python
python避免死锁方法实例分析
2015/06/04 Python
浅谈python类属性的访问、设置和删除方法
2016/07/25 Python
python进行TCP端口扫描的实现
2018/12/21 Python
Python脚本实现监听服务器的思路代码详解
2020/05/28 Python
浅谈Python 命令行参数argparse写入图片路径操作
2020/07/12 Python
Python 使用双重循环打印图形菱形操作
2020/08/09 Python
Python爬取网站图片并保存的实现示例
2021/02/26 Python
工商治理实习生的自我评价
2014/01/15 职场文书
杜甫草堂导游词
2015/02/03 职场文书
美丽人生观后感
2015/06/03 职场文书
如何利用STAR法则制作留学文书?
2019/08/26 职场文书