当前位置:   article > 正文

解决微信小程序的wx-charts插件tab切换时的显示会出现位置移动问题-tab切换时,图表显示错乱-实现滑动tab_小程序 tabmenu 乱窜

小程序 tabmenu 乱窜

解决Echarts在微信小程序tab切换时的显示会出现位置移动问题

tab切换时,图表显示错乱

<canvas class="kcanvas" canvas-id="ringCanvas" hidden="{{currentTab == 1}}"></canvas>
    <view hidden="{{currentTab !== 1}}" id="one" class="currentPage">
     <view class="containerSales" wx: if="{{currentTab === 1}}">
     <ec-canvas id="mychart-dom-bar" canvas-id="mychart-bar" ec="{{ecSales}}"></ec-canvas>
     </view>
    </view>
    • 1
    • 2
    • 3
    • 4
    ring chart
    
    new wxCharts({
     canvasId: 'ringCanvas',
     type: 'ring',
     series: [{
      name: '成交量1',
      data: 15,
     }, {
      name: '成交量2',
      data: 35,
     }, {
      name: '成交量3',
      data: 78,
     }, {
      name: '成交量4',
      data: 63,
     }],
     width: 320,
     height: 200,
     dataLabel: false
    });
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    在这里插入图片描述

    js当中使用require引入即可:

    let Charts = require('./../../utils/wxcharts.js');

      一般以iPhone6为标准进行设计

      /* 例如设计图尺寸为320 x 300 */
      .canvas {
          width: 640px;
          height: 600px;
          transform: scale(0.5)
      }
      • 1
      • 2
      • 3
      • 4
      • 5
      new Charts({
            animation: true,
            canvasId: 'canvas5',
            type: 'ring',
            extra: {
              ringWidth: 10,//圆环的宽度
              pie: {
                offsetAngle: -45//圆环的角度
              }
            },
            title: {
              name: '70%',
              color: '#7cb5ec',
              fontSize: 25
            },
            subtitle: {
              name: '收益率',
              color: '#666666',
              fontSize: 15
            },
            series: [{
              name: '成交量1',
              data: 15,
              stroke: false
            }, {
              name: '成交量2',
              data: 35,
              stroke: false
            }, {
              name: '成交量3',
              data: 78,
              stroke: false
            }, {
              name: '成交量4',
              data: 63,
              stroke: false
            }],
            disablePieStroke: true,
            width: 640,
            height: 200,
            dataLabel: true,
            legend: false,
            padding: 0
          });
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
      • 21
      • 22
      • 23
      • 24
      • 25
      • 26
      • 27
      • 28
      • 29
      • 30
      • 31
      • 32
      • 33
      • 34
      • 35
      • 36
      • 37
      • 38
      • 39
      • 40
      • 41
      • 42
      • 43

      在这里插入图片描述

      /* 环形 */
      
      .canvas {
        z-index: 1;
        position: absolute;
        left: 32px;
        top: 60px;
        height: 350rpx;
      }
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      new wxCharts({
                canvasId: 'ringCanvas',
                type: 'ring',
                legend: false,
                extra: {
                  ringWidth: 15, //圆环的宽度
                  pie: {
                    offsetAngle: -45 //圆环的角度
                  }
                },
                series: [{
                  data: res.data.data.normalNum,
                }, {
                  data: res.data.data.beLateNum,
                }, {
                  data: res.data.data.leaveNum,
                }, {
                  data: res.data.data.uncheckedNum,
                }],
                width: 320,
                height: 200,
                dataLabel: false
              });
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
      • 21
      • 22
      switchNav: function(event) {
          var cur = event.currentTarget.dataset.current;
          if (this.data.currentTab == cur) { return false; }
          else {
            this.setData({
              currentTab: cur
            })
          }
       
          if(cur==1){
            this.setData({
              init_datas: nz_data,
              currentTab1: 1
            })
            var tmp_datas = this.data.init_datas;
            console.dir(tmp_datas);
            this.setData({
              nz_datas: tmp_datas,
              class:1
            })
          }
          if(cur==2){
            this.setData({
              init_datas1: man_data,
              currentTab1: 1
            })
            var tmp_datas = this.data.init_datas1;
            console.dir(tmp_datas);
            this.setData({
              nz_datas: tmp_datas,
              class:2
            })
          }
        },
       
        switchNav1: function (event) {
          var cur = event.currentTarget.dataset.curr;
          console.log("switchNav1_curr=" cur);
          console.log("class="   this.data.class);
          if (this.data.currentTab1 == cur) { return false; }
          else {
            this.setData({
              currentTab1: cur
            })
          }
       
          if(cur==1){
            if(this.data.class==1){
              var tmp_datas = this.data.init_datas;
              this.setData({
                nz_datas: tmp_datas
              })
            }
            if (this.data.class == 2) {
              var tmp_datas = this.data.init_datas1;
              this.setData({
                nz_datas: tmp_datas
              })
            }
          }
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
      • 21
      • 22
      • 23
      • 24
      • 25
      • 26
      • 27
      • 28
      • 29
      • 30
      • 31
      • 32
      • 33
      • 34
      • 35
      • 36
      • 37
      • 38
      • 39
      • 40
      • 41
      • 42
      • 43
      • 44
      • 45
      • 46
      • 47
      • 48
      • 49
      • 50
      • 51
      • 52
      • 53
      • 54
      • 55
      • 56
      • 57
      • 58
      • 59

      实现滑动tab

      <view>
        <view class="swiper-tab">
          <view class="swiper-tab-list {{tab==0 ? 'on' : ''}}" data-current="0" bindtap="tab_click">图文</view>
          <view class="swiper-tab-list {{tab==1 ? 'on' : ''}}" data-current="1" bindtap="tab_click">产品</view>
        </view>
        <swiper current="{{tab}}" class="swiper-box" duration="300" style="height:{{winHeight - 31}}px" bindchange="tab_slide">
          <swiper-item>
            图文
          </swiper-item>
       
          <swiper-item>
            产品
          </swiper-item>
        </swiper>
      </view>
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      Page({
        data: {
          tab: 0
        },
        tab_slide: function (e) {//滑动切换tab 
          var that = this;
          that.setData({ tab: e.detail.current });
        },
        tab_click: function (e) {//点击tab切换
          var that = this;
          if (that.data.tab === e.target.dataset.current) {
            return false;
          } else {
            that.setData({
              tab: e.target.dataset.current
            })
          }
        },
      })
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18

      更多专业前端知识,请上 【猿2048】www.mk2048.com
      声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/526606
      推荐阅读
      相关标签
        

      闽ICP备14008679号