项目首页如上图所示:
先说说我的想法吧,此页面共包含title,tabs(选项栏),materchart(仪表盘),loading(等待加载提示),btns(按钮)四个组件,
1、表盘组件所用到的数据由首页以属性的方式传递,
因为数据从服务器端是异步获取,因此直接写入请求数据会出错,因为在页面渲染时异步请求未完成,所以此处加入了loading模块,在请求的过程中显示loading状态,等待请求完毕时更改v-if的值,来达到异步显示图表的目的。
这里先简单记录一下自己的思路。
2、下面说一下首页tab栏的实现吧
tab栏采用了vuxUI内的tab插件,然后将tab点击事件传递给父组件,
传递:
父组件接收:
然后,在父组件内通过上述方法请求资源。
关于echarts组件图标的更新,重新画图并不能执行,因为echarts采用H5的convas方法画图,直接调用的时候因为页面内已存在此元素,故报错,通过看官方文档,我的方案是在父组件内调用图表子组件的setOption()方法,即可实现图表更新。