bytev-charts-beta1.0
Version:
测试版-1.0,版本号为小版本; 基于echarts和JavaScript及ES6封装的一个可以直接调用的图表组件库,内置主题设计,简单快捷,且支持用户自定义配置; npm 安装方式: npm install bytev-charts 若启动提示还需额外install插件,则运行 npm install @babel/runtime-corejs2 即可;
158 lines (139 loc) • 5.46 kB
JavaScript
import _Reflect$construct from "@babel/runtime-corejs2/core-js/reflect/construct";
import "core-js/modules/es.object.to-string.js";
import _classCallCheck from "@babel/runtime-corejs2/helpers/classCallCheck";
import _createClass from "@babel/runtime-corejs2/helpers/createClass";
import _assertThisInitialized from "@babel/runtime-corejs2/helpers/assertThisInitialized";
import _get from "@babel/runtime-corejs2/helpers/get";
import _inherits from "@babel/runtime-corejs2/helpers/inherits";
import _possibleConstructorReturn from "@babel/runtime-corejs2/helpers/possibleConstructorReturn";
import _getPrototypeOf from "@babel/runtime-corejs2/helpers/getPrototypeOf";
import _defineProperty from "@babel/runtime-corejs2/helpers/defineProperty";
import _Object$assign from "@babel/runtime-corejs2/core-js/object/assign";
import _JSON$stringify from "@babel/runtime-corejs2/core-js/json/stringify";
import "core-js/modules/es.function.name.js";
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
import EchartsComponent from '../EchartsComponent.class.js';
/*
* 进度条组件
* */
var ProgressBarComponent = /*#__PURE__*/function (_EchartsComponent) {
_inherits(ProgressBarComponent, _EchartsComponent);
var _super = _createSuper(ProgressBarComponent);
//组件分类名称
function ProgressBarComponent(element, option) {
var _this;
_classCallCheck(this, ProgressBarComponent);
_this = _super.call(this, element, option);
_defineProperty(_assertThisInitialized(_this), "componentName", 'ProgressBarComponent');
_this.name = 'ProgressBar';
return _this;
}
_createClass(ProgressBarComponent, [{
key: "buildByteVModel",
value: function buildByteVModel() {
_get(_getPrototypeOf(ProgressBarComponent.prototype), "buildByteVModel", this).call(this);
this.theme.grid.right = this.theme.grid.left;
this.byteVModel.grid = _Object$assign(this.theme.grid, {
top: 0,
bottom: 0
}); //柱状图制作的进度条的tooltip的触发方式
this.byteVModel.tooltip.axisPointer = {
type: 'none'
};
this.byteVModel.xAxis = [{
type: 'value',
splitLine: {
show: false
},
axisLabel: {
show: false
}
}];
this.theme.yAxis = {
axisLine: {
show: false
},
axisTick: {
show: false
},
axisLabel: {
fontSize: 16,
inside: true,
verticalAlign: "bottom",
lineHeight: 48,
align: "left",
color: this.theme.nameTextStyle.color
},
data: []
};
var y2 = JSON.parse(_JSON$stringify(this.theme.yAxis));
y2.axisLabel.fontSize = 18;
y2.axisLabel.align = 'right';
this.byteVModel.yAxis = [this.theme.yAxis, y2];
}
/**
* 数据格式
* @param {String} name 名称<br/>
* @param {Number} value 数值 名称<br/>
* @param {max} Number 最大值 名称<br/>
* @param {String} unit 单位 (可不传) 名称<br/>
* @param {barWidth} Number 进度条宽度 (可不传) 名称<br/>
* @param {itemStyle} Object itemStyle样式 (可不传) 名称<br/>
*
[
{
name: '数据1',
value: 30,
unit: '%',
max: 100,
}
]
或
//不传max默认按照100计算
[
{
name: '数据1',
value: 30,
unit: '%'
},
]
//也支持传多个对象, 多个中间显示的title和detail会重叠, 需要手动隐藏或是调整显示位置
[
{
name: '数据1',
value: 30,
unit: '%'
},
{
name: '数据2',
value: 60,
unit: '%'
},
]
* */
}, {
key: "setData",
value: function setData(data) {
if (data.constructor === Array) {
data = data.length ? data[data.length - 1] : {};
}
if (this.verifyData(data)) _get(_getPrototypeOf(ProgressBarComponent.prototype), "setData", this).call(this, data);
}
}, {
key: "playAnimation",
value: function playAnimation() {// this.setCirculating()
} //验证进度条的数据格式是否正确,及数据是否为空
}, {
key: "verifyData",
value: function verifyData(data) {
if (!data || data.value == '' || data.value == null || data.max == '' || data.value == null) {
console.warn("The data is empty or incorrectly formatted, function name : setData(data);");
return false;
}
return true;
}
}]);
return ProgressBarComponent;
}(EchartsComponent);
export { ProgressBarComponent as default };