0.0.16 • Published 5 years ago

t-digital-gauge2 v0.0.16

Weekly downloads
2
License
ISC
Repository
github
Last release
5 years ago

t-digital-gauge 说明

  • 个人作品,纯 js 编写 canvas 实现
  • 已经修复不可正常使用的问题
  • 如果好用,点个赞哟
 t-digital-gauge2对上一个版本进行了完全重写
 上一代版本是临时版本,建议废弃
 绘制的重原理上进行了重新实现
 支持更多参数

安装

npm install t-digital-gauge2 -S

使用

      import { Knob, Swtich, DigitalGauge } from 't-digital-gauge2'
      let knobBOX = document.getElementById('knob')
      let swtichBOX = document.getElementById('swtich')
      let digitalgaigeBOX = document.getElementById('digitalgaige')

      let options={}    //option 是可选参数,内容为下面的配置项

      let knob = new Knob(knobBOX,options)
      let swtich = new Swtich(swtichBOX,options)
      let digitalgaige = new DigitalGauge(digitalgaigeBOX,options)

      setInterval(() => {
        digitalgaige.value = Math.random() * 100
      }, 2000)

SSR(服务端渲染)

  由于库使用到了document进行节点创建,故在服务端渲染的情况下,如下使用  下面为nextjs,nuxt中使用类似
  // import { DigitalGauge } from 't-digital-gauge2'
  function getDigitalGauge() {
    return process.browser ? require('t-digital-gauge2').DigitalGauge : function () { }
  }
  export default () => {
    useEffect(() => {
      const DigitalGauge = getDigitalGauge()
      const div = document.getElementById('digitalgauge')
      new DigitalGauge(div, { value: 50 })
    }, [])
    return <>
      <h1>这是demo</h1>
      <div id='digitalgauge' style={{ width: 200, height: 200, backgroundColor: "pink" }}></div>
    </>
  }

补充

        三个组件均提供 resize   destroy  方法,用于重新计算尺寸以及卸载组件

        组件没有使用双向绑定,但是通过setter对部分属性进行拦截
        比如 DigitalGauge
              value errorMsg  maxValue minValue time unitTitle title valueSuffix
            Swtich
              value errorMsg
            Knob
              value errorMsg
        上面经过拦截的属性,修改会即时生效

dist

  删除对moment  dayjs的依赖

配置项(option)

knob

参数说明备注
minValue最小值
maxValue最大值
title标题
bgColor背景色
tickCellArg线条单位角度
value指示的值
onChange控制变化回调函数
decimals精度
errorMsg提示问题

swtich

参数说明备注
showOnOffLabels最小值
onChange控制变化回调函数
errorMsg提示问题

digital-gauge

参数说明备注
minValue最小值
maxValue最大值
title标题
time时间
unitTitle单位标题不显示时间时有效
value展示的数值
valueSuffix数值的后缀
showMinMax是否展示极值donut 无效
showTitle是否展示标题
showTimestamp是否展示时间
showUnitTitle是否展示单位标题展示时间时强制不展示
gaugeTypegauge 的类型horizontalBar:水平 verticalBar:竖直 donut 圆 arc:半圆
gaugeWidthScalecanvas 笔画相对大小1 为宽或高的 1/3
titleFont标题样式
labelFontlabel 样式
valueFontvalue 样式
minMaxFont极值样式
levelColors梯度色值
animation动画
animationDuration动画持续时间
roundedLineCapcanvas 笔帽
stripBasic基本间隔2px 或 2°
dashThickness条形间隔
gaugeColor背景色
defaultColor不设置 levelColors 时的默认颜色

demo

水平垂直

间隔

无间隔

控制

0.0.16

5 years ago

0.0.15

5 years ago

0.0.13

5 years ago

0.0.14

5 years ago

0.0.12

5 years ago

0.0.10

5 years ago

0.0.11

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.5

5 years ago

0.0.4

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago