fineui是帆软报表和BI产品线所使用的前端框架。
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
import { Element } from "./element";
|
|
|
|
import { isString, isWidget } from "../2.base";
|
|
|
|
|
|
|
|
BI.Element = Element;
|
|
|
|
BI.Element.renderEngine = {
|
|
|
|
createElement: widget => {
|
|
|
|
if (isWidget(widget)) {
|
|
|
|
const o = widget.options;
|
|
|
|
if (o.element instanceof Element) {
|
|
|
|
return o.element;
|
|
|
|
}
|
|
|
|
if (typeof o.element === "string" && o.element !== "body") {
|
|
|
|
o.root = false;
|
|
|
|
|
|
|
|
return new Element(widget);
|
|
|
|
}
|
|
|
|
|
|
|
|
if (o.root === true) {
|
|
|
|
return new Element();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (isString(widget)) {
|
|
|
|
return new Element(widget);
|
|
|
|
}
|
|
|
|
|
|
|
|
return new Element(widget);
|
|
|
|
},
|
|
|
|
|
|
|
|
createFragment() {
|
|
|
|
return new Element();
|
|
|
|
},
|
|
|
|
};
|