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

专业网站建设企业网站制作2021年中国中小企业最新数据

专业网站建设企业网站制作,2021年中国中小企业最新数据,虚拟电脑可以做网站吗,桂林seo优化一、背景 微信小程序项目需要渲染一个柱状图,使用uCharts组件完成 uCharts官网指引👉:uCharts官网 - 秋云uCharts跨平台图表库 二、实现效果 三、具体使用 进入官网查看指南,有两种方式进行使用:分别是原生方式与组…

一、背景

微信小程序项目需要渲染一个柱状图,使用uCharts组件完成

uCharts官网指引👉:uCharts官网 - 秋云uCharts跨平台图表库

二、实现效果

三、具体使用

进入官网查看指南,有两种方式进行使用:分别是原生方式与组件方式

3.1、原生方式

第一步:获取u-charts.js

获取方式一:通过码云 uCharts 项目开源地址获取 u-charts.js

https://gitee.com/uCharts/uCharts

获取方式二:通过 npm 命令 npm i @qiun/ucharts 安装

安装成功后使用 import 或 require 进行引用

备注:我使用的是第二种方式,npm下载后,再通过import使用的

第二步:引入u-charts.js文件在项目中使用

<template><view><canvas canvas-id="myid" id="myid" class="charts" @tap="tap" /></view>
</template><script>
import uCharts from '../../node_modules/@qiun/ucharts/u-charts'
var uChartsInstance = {}
export default {data() {return {cWidth: 750,cHeight: 500}},onReady() {//这里的 750 对应 css .charts 的 widththis.cWidth = uni.upx2px(750)//这里的 500 对应 css .charts 的 heightthis.cHeight = uni.upx2px(500)this.getServerData()},methods: {getServerData() {//模拟从服务器获取数据时的延时setTimeout(() => {let res = {categories: ['2016', '2017', '2018', '2019', '2020', '2021'],series: [{name: '目标值',data: [35, 36, 31, 33, 13, 34]},{name: '完成量',data: [18, 27, 21, 24, 6, 28]}]}this.drawCharts('myid', res)}, 500)},drawCharts(id, data) {const ctx = uni.createCanvasContext(id, this)uChartsInstance[id] = new uCharts({type: 'column',context: ctx,width: this.cWidth,height: this.cHeight,categories: data.categories,series: data.series,xAxis: {disableGrid: true},yAxis: {data: [{ min: 0 }]},extra: {column: {type: 'group'}}})},tap(e) {uChartsInstance[e.target.id].touchLegend(e)uChartsInstance[e.target.id].showToolTip(e)}}
}
</script><style scoped>
.charts {width: 750rpx;height: 500rpx;
}
</style>

3.2、组件方式

第一步:使用 HBuilderX 导入插件

uniapp插件地址指引👉:秋云 ucharts echarts 高性能跨全端图表组件 - DCloud 插件市场 

第二步:在需要使用图表的地方引入组件

<template><view class="charts-box"><qiun-data-charts type="column" :chartData="chartData" /></view>
</template><script>
export default {data() {return {chartData: {}}},onReady() {this.getServerData()},methods: {getServerData() {//模拟从服务器获取数据时的延时setTimeout(() => {let res = {categories: ['2016', '2017', '2018', '2019', '2020', '2021'],series: [{name: '目标值',data: [35, 36, 31, 33, 13, 34]},{name: '完成量',data: [18, 27, 21, 24, 6, 28]}]}this.chartData = JSON.parse(JSON.stringify(res))}, 500)}}
}
</script><style scoped>
.charts-box {width: 100%;height: 300px;
}
</style>

备注:需要给元素设置宽高,否则图表无法显示

四、项目中bug补充

4.1、bug描述

在微信小程序中使用uCharts做柱状图,进入页面后滑动图表,此时图表在可视区域被遮挡了显示不全,点击下方的切换按钮,图表会上移,脱离原本位置,后面再切回到第一个按钮会回归到正常位置

图片1是切换按钮后图表上移(PS:错误版本,需改成图片2的效果)

图片2是正常情况下切换按钮图表位置不动(PS:这版是已经修改成功的状态)

4.2、问题分析

查看代码发现,在组件挂载时已经获取了按钮1下的接口数据(每个按钮下会展示数据列表),在切换按钮时,并对按钮2和按钮3都发起了请求,所以在切换按钮2和按钮3时又触发重绘。

为什么点按钮1时图表不会上移?是因为第一次进入页面组件挂载已经获取了按钮1的数据,所以在切换回按钮1时不会重新发请求触发重绘

理解了这个问题之后,我便将每个按钮的请求都放在组件挂载时获取,切换按钮只是重新赋值index值

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

相关文章:

  • 马鞍山市建设银行网站大连百度推广
  • 爱站工具有加超人下拉系统evus在哪个网站做登记
  • 全屏企业网站欣赏3d建模学什么专业
  • 杰奇网站地图插件360建筑网撤销自己的简历怎么撤销
  • seo人员要先对网站进行诊断wordpress 没有首页
  • 企业网站优化方案青岛 网站设计
  • wordpress友链新窗口优化关键词的方法
  • 网站建设与维护经营范围安徽网络推广新手
  • 网站建设 简易合同yy直播间
  • 主色调为绿色的网站四川住房建设和城乡建设厅新网站
  • 三端互通传奇手游找服网站网站开发要写代码吗
  • 网站建设中忽略的字体侵权行为wordpress在哪儿打开
  • 安义网站建设保定网页设计
  • 网站建设主机的功能网站中文名要注册的吗
  • c2c网站的类型中信建设有限责任公司总经理
  • WordPress多站点开启多语言海口手机端建站模板
  • 行业网站建设哪家专业wdcp安装wordpress 缓存
  • 网站怎么做参考文献南京便宜网站建设
  • 潍坊网站建设科技有限公司西安做网站比较好的公司
  • 电商网站的支付功能网站网页设计师
  • dedecms手机网站模板安装教程绵阳网站
  • 兰州网站制作公司在哪里wordpress ldap
  • 江西城乡建设厅网站凤岗镇网站仿做
  • 建设网站的目的和意义是什么深圳市核酸检测点查询
  • 龙岗专业网站建设网站seo优化网站
  • 超酷网站企业收录网站有什么用
  • 网站建设终端是什么只有虚拟主机可以做网站吗
  • 网站建设需要的技术WordPress跳转提示
  • 哪个网站可以做试卷健身俱乐部网站模板
  • 福建省品牌建设促进会网站专业品牌网站设计公司