kre-form
Version:
本项目由 Angular8+ 编写的表单设计器和表单应用,所有的配置都是 JSON 结构体组成,PC 端是基于 ANT 组件库封装
82 lines • 6.05 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component, Input, ViewChild, ElementRef, Output, EventEmitter, HostListener, } from "@angular/core";
import * as echarts from "echarts";
export class EchartDomComponent {
constructor() {
this.echartClick = new EventEmitter();
}
/**
* @param {?} event
* @return {?}
*/
onResize(event) {
this.boardChart.resize();
}
/**
* @return {?}
*/
ngOnInit() { }
/**
* @return {?}
*/
ngAfterViewInit() {
this.chartsInit();
}
/**
* @param {?} changes
* @return {?}
*/
ngOnChanges(changes) {
for (const propName in changes) {
/** @type {?} */
const chng = changes[propName];
if (propName === "option" && chng.currentValue && this.boardChart) {
this.boardChart.clear();
this.boardChart.setOption(chng.currentValue);
}
}
}
/**
* @return {?}
*/
chartsInit() {
this.boardChart = echarts.init(this.chartsContent.nativeElement);
this.boardChart.setOption(this.option);
this.boardChart.on("click", (/**
* @param {?} e
* @return {?}
*/
(e) => {
this.echartClick.emit(e);
}));
}
}
EchartDomComponent.decorators = [
{ type: Component, args: [{
selector: "echart-dom",
template: "<div #chartsContent style=\"width: 100%; height: 100%\"></div>\n",
styles: [""]
}] }
];
/** @nocollapse */
EchartDomComponent.ctorParameters = () => [];
EchartDomComponent.propDecorators = {
option: [{ type: Input }],
echartClick: [{ type: Output }],
chartsContent: [{ type: ViewChild, args: ["chartsContent", { static: false },] }],
onResize: [{ type: HostListener, args: ["window:resize", ["$event"],] }]
};
if (false) {
/** @type {?} */
EchartDomComponent.prototype.option;
/** @type {?} */
EchartDomComponent.prototype.echartClick;
/** @type {?} */
EchartDomComponent.prototype.chartsContent;
/** @type {?} */
EchartDomComponent.prototype.boardChart;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNoYXJ0LWRvbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Aa3JlLWZvcm0vYWJjLyIsInNvdXJjZXMiOlsibGliL2JvYXJkL2NvbXBvbmVudHMvZWNoYXJ0LWRvbS9lY2hhcnQtZG9tLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxLQUFLLEVBRUwsU0FBUyxFQUNULFVBQVUsRUFFVixNQUFNLEVBQ04sWUFBWSxFQUNaLFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEtBQUssT0FBTyxNQUFNLFNBQVMsQ0FBQztBQU9uQyxNQUFNLE9BQU8sa0JBQWtCO0lBVTdCO1FBUlUsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBUTVCLENBQUM7Ozs7O0lBTGhCLFFBQVEsQ0FBQyxLQUFVO1FBQ2pCLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7OztJQUtELFFBQVEsS0FBSSxDQUFDOzs7O0lBRWIsZUFBZTtRQUNiLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDOzs7OztJQUVELFdBQVcsQ0FBQyxPQUFZO1FBQ3RCLEtBQUssTUFBTSxRQUFRLElBQUksT0FBTyxFQUFFOztrQkFDeEIsSUFBSSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDOUIsSUFBSSxRQUFRLEtBQUssUUFBUSxJQUFJLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDakUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDeEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQzlDO1NBQ0Y7SUFDSCxDQUFDOzs7O0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2pFLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxPQUFPOzs7O1FBQUUsQ0FBQyxDQUFNLEVBQUUsRUFBRTtZQUNyQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzQixDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7OztZQXZDRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFlBQVk7Z0JBQ3RCLDRFQUEwQzs7YUFFM0M7Ozs7O3FCQUVFLEtBQUs7MEJBQ0wsTUFBTTs0QkFDTixTQUFTLFNBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTt1QkFDNUMsWUFBWSxTQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7OztJQUh6QyxvQ0FBcUI7O0lBQ3JCLHlDQUEyQzs7SUFDM0MsMkNBQXlFOztJQU16RSx3Q0FBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIE9uSW5pdCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxuICBFbGVtZW50UmVmLFxuICBBZnRlclZpZXdJbml0LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0ICogYXMgZWNoYXJ0cyBmcm9tIFwiZWNoYXJ0c1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiZWNoYXJ0LWRvbVwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL2VjaGFydC1kb20uY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL2VjaGFydC1kb20uY29tcG9uZW50Lmxlc3NcIl0sXG59KVxuZXhwb3J0IGNsYXNzIEVjaGFydERvbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgb3B0aW9uOiBhbnk7XG4gIEBPdXRwdXQoKSBlY2hhcnRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQFZpZXdDaGlsZChcImNoYXJ0c0NvbnRlbnRcIiwgeyBzdGF0aWM6IGZhbHNlIH0pIGNoYXJ0c0NvbnRlbnQ6IEVsZW1lbnRSZWY7XG4gIEBIb3N0TGlzdGVuZXIoXCJ3aW5kb3c6cmVzaXplXCIsIFtcIiRldmVudFwiXSlcbiAgb25SZXNpemUoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuYm9hcmRDaGFydC5yZXNpemUoKTtcbiAgfVxuXG4gIGJvYXJkQ2hhcnQ6IGFueTtcbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG5nT25Jbml0KCkge31cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jaGFydHNJbml0KCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBhbnkpIHtcbiAgICBmb3IgKGNvbnN0IHByb3BOYW1lIGluIGNoYW5nZXMpIHtcbiAgICAgIGNvbnN0IGNobmcgPSBjaGFuZ2VzW3Byb3BOYW1lXTtcbiAgICAgIGlmIChwcm9wTmFtZSA9PT0gXCJvcHRpb25cIiAmJiBjaG5nLmN1cnJlbnRWYWx1ZSAmJiB0aGlzLmJvYXJkQ2hhcnQpIHtcbiAgICAgICAgdGhpcy5ib2FyZENoYXJ0LmNsZWFyKCk7XG4gICAgICAgIHRoaXMuYm9hcmRDaGFydC5zZXRPcHRpb24oY2huZy5jdXJyZW50VmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNoYXJ0c0luaXQoKSB7XG4gICAgdGhpcy5ib2FyZENoYXJ0ID0gZWNoYXJ0cy5pbml0KHRoaXMuY2hhcnRzQ29udGVudC5uYXRpdmVFbGVtZW50KTtcbiAgICB0aGlzLmJvYXJkQ2hhcnQuc2V0T3B0aW9uKHRoaXMub3B0aW9uKTtcbiAgICB0aGlzLmJvYXJkQ2hhcnQub24oXCJjbGlja1wiLCAoZTogYW55KSA9PiB7XG4gICAgICB0aGlzLmVjaGFydENsaWNrLmVtaXQoZSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==