当前位置: 首页 > news >正文

科创纵横 网站建设服务器网站过多对排名

科创纵横 网站建设,服务器网站过多对排名,做二手衣服的网站,查老板查企业目录 问题描述产生原因处理方法1.使用echart 的API —— resize()2.使用 v-if 总结 问题描述 项目中在el-tabs下面使用了图表,发现图表的宽度始终只有100px 产生原因 首先echart初始化的组件宽度设置了width: 100%,那么本来这个时候,echar…

目录

  • 问题描述
  • 产生原因
  • 处理方法
    • 1.使用echart 的API —— resize()
    • 2.使用 v-if
  • 总结

问题描述

项目中在el-tabs下面使用了图表,发现图表的宽度始终只有100px

产生原因

首先echart初始化的组件宽度设置了width: 100%,那么本来这个时候,echart图表会根据父级自适应宽度。但因为el-tabs标签页,一开始的状态是display:none,也就是没有宽度,这个时候ehcart获取不到父级宽度,就会默认的给一个100px的宽度

处理方法

1.使用echart 的API —— resize()

这也是我使用到的解决方法,自我感觉比其他好用,就不会遇见一些如dom还未渲染就使用的问题。

其实对于这个宽度问题,在echart官网上也有说明(有时候图表会放在多个标签页里,那些初始隐藏的标签在初始化图表的时候因为获取不到容器的实际高宽,可能会绘制失败,因此在切换到该标签页时需要手动调用 resize 方法获取正确的高宽并且刷新画布,或者在 opts 中显示指定图表高宽。)
在这里插入图片描述
部分代码如下:

// 父组件html代码
<el-tabs @tab-click="tabClick" v-model="activeName" type="border-card" style="height: 100%"><el-tab-pane label="1" name="1"><work-status-echart ref="startWorkRef" type="start"></work-status-echart></el-tab-pane><el-tab-pane label="2" name="2"><work-status-echart ref="endWorkRef" type="end"></work-status-echart></el-tab-pane>
</el-tabs>
/*第一次默认的标签页显示,如果图表宽度为100px,可以选择在适当的时候调用子组件的自适应,即直接调用一次this.tabClick()我是在数据接口请求,.finally(() => {})里进行调用,成功解决
*/
// 父组件调用,在tab标签页切换时,让图表进行宽度自适应
tabClick() {this.$nextTick(() => {if(this.workName === '1') {this.$refs.startWorkRef.resize();} else {this.$refs.endWorkRef.resize();}})
},
// work-status-echart
// 图表组件中写好所有图表宽度自适应方法
resize() {this.currentChart && this.currentChart.resize();this.voltageChart && this.voltageChart.resize();this.TotWChart && this.TotWChart.resize();this.TotVarChart && this.TotVarChart.resize();},// 

2.使用 v-if

<el-tabs @tab-click="tabClick" v-model="activeName" type="border-card" style="height: 100%"><el-tab-pane label="1" name="1"><work-status-echart v-if="activeName === '1'" type="start"></work-status-echart></el-tab-pane><el-tab-pane label="2" name="2"><work-status-echart v-if="activeName === '2'" type="end"></work-status-echart></el-tab-pane>
</el-tabs>

总结

我是用的resize() 解决的问题,当然,在某些特定的情况下,如果你方法都用尽了都不行,那就得好好剖析一下你的代码逻辑了。
总而言之,echart自带的API resize(),能够解决大部分的这种问题

http://www.yayakq.cn/news/550884/

相关文章:

  • 网站建设注意哪些内容网站制作建设哪家公司好
  • 网站商城建设费用网站dns如何修改不了
  • 盐城手机网站建设wordpress pdf 在线读
  • 挂号网站建设商业设计方案
  • 外贸公司网站建设服务专业的网页制作公司
  • 网站建设域名未拿到邢台企业做网站
  • 门户网站建设步骤薄荷网wordpress
  • 免费建设网站平台网站建立时间
  • 专业旅游网站建设产品视频宣传片
  • 网站后台管理系统素材手机自助建网站
  • yfcmf做网站注册大创网
  • 导航站 wordpress公司网页设计免费
  • 山东钢结构建设局网站怎么做网站推广林芝地区
  • 网站后台 模板网站优化服务流程
  • 商用营销型网站建设拍照搜索百度识图
  • 招商网站设计wordpress页脚页眉插件
  • 酒店用品网站源码中国建设银行门户网站
  • 网站logo更换学前端好还是后端好
  • 个人网站免费源码黄石网站建设哪家专业
  • 北京建设教育网站门户网站 建设 投入
  • 乐山市建设局官方网站电子商务网站开发开发背景
  • 企业网站是如何做的平台宣传推广方案
  • 网站上传空间的ip地址优化防控工作的二十条措施
  • 网站开发攻克时间创建一个网站需要做哪些工作
  • 赛门仕博做网站怎么样公司注册网站开发的行业表述
  • 关于asp sql网站开发的书籍wordpress 主题 下载
  • 驻马店哪里做网站网络营销的概念名词解释
  • 做自媒体好还是网站好邢台又一地被划定高风险区域
  • 药企网站怎么做做网站怎么添加关键词
  • 黄冈网站建设的方案网站备案期间可以用二级域名访问网站吗