uni-app UChart 怎样动态设置 canvas 的宽度?

本文将介绍怎样设置 uchart 的 canvas 的宽度。

下面是我们创建uChart时常用代码:

<script>
    import uCharts from '@/components/u-charts/u-charts.js';
    var _self;
    var canvaLineA=null;
    export default {
        data() {
            return {
                cWidth:'',
                cHeight:'',
                pixelRatio:1,
            }
        },
        onLoad() {
            _self = this;
            this.cWidth=uni.upx2px(750);
            this.cHeight=uni.upx2px(500);
            this.getServerData();
        },
        methods: {
            createChart: function(canvasId,chartData){
                canvaLineA = new uCharts({
                    $this:_self,
                    canvasId: canvasId,
                    type: 'line',
                    //...
                    width: _self.cWidth*_self.pixelRatio,
                    height: _self.cHeight*_self.pixelRatio,
                    extra: {
                        line:{
                            type: 'straight'
                        }
                    }
                });
            }
        }
    }
</script>

上面代码中,在创建 uCharts 是指定了 charts 的宽度和高度,如下:

width: _self.cWidth*_self.pixelRatio,
height: _self.cHeight*_self.pixelRatio,

但是,创建出来的 uchart 可视化图表并没有填充满屏幕宽度。我们可以直接使用绑定语法修改 <canvas> 元素的宽度,如下:

<!-- 报警类型空心圆图 -->
<canvas canvas-id="canvasLineA" id="canvasLineA"
    :style="{width:cWidth +'px',height:cHeight +'px'}"
    class="charts charts_ring" @touchstart="touchRingAlarm"></canvas>
一寸光阴一寸金,寸金难买寸光阴。——《增广贤文》
1 不喜欢
说说我的看法 -
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号