【仅供内部供应商使用,不提供对外解答和培训】
【仅供内部供应商使用,不提供对外解答和培训】
仿照9.0将目录和管理系统结合在一起.
接口 | 描述 | 参数 | 返回值 |
---|---|---|---|
Dec.Utils.getWorkbenchSubDirectoryById | 分层取目录树节点 | pId, callback | |
Dec.Utils.searchWorkbenchSubDirectory | 搜索目录树 | keyword,callback | |
Dec.Utils.getFavoritesList | 取收藏列表 | callback | |
Dec.Utils.getManagementModules | 取管理系统节点 | callback | |
取menu节点 | menu list | ||
Dec.Utils.handlerCollect | 收藏一个模板/取消收藏一个节点 | true/false | |
Dec.Utils.getReportList | 取分享给我的列表 | ||
package com.fr.plugin.decision.theme.original; import com.fr.web.struct.Component; import com.fr.web.struct.category.ScriptPath; import com.fr.web.struct.category.StylePath; import com.fr.web.struct.Filter; public class OriginalComponent extends Component { public static final OriginalComponent KEY = new OriginalComponent(); private OriginalComponent() { } @Override public ScriptPath script() { return ScriptPath.build("/com/fr/plugin/decision/theme/original/web/theme.js"); } @Override public StylePath style() { return StylePath.build("/com/fr/plugin/decision/theme/original/web/style.css"); } @Override public Filter filter() { return new Filter() { public boolean accept() { return "com.fr.plugin.decision.theme.original.OriginalTheme".equals(AppearanceConfig.getInstance().getThemeId()); } }; } }
package com.fr.plugin.decision.theme.original; import com.fr.decision.fun.impl.AbstractThemeVariousProvider; import com.fr.decision.web.MainComponent; import com.fr.plugin.transform.ExecuteFunctionRecord; import com.fr.plugin.transform.FunctionRecorder; import com.fr.web.struct.Atom; /** * Created by dailer on 18/10/10. */ @FunctionRecorder(localeKey = "decision-theme-test") public class OriginalTheme extends AbstractThemeVariousProvider { @Override public Atom attach() { return MainComponent.KEY; } @Override public Atom client() { return OriginalComponent.KEY; } @Override @ExecuteFunctionRecord public String name() { return "OriginalTheme"; } @Override public String text() { return "复古"; } @Override public String coverPath() { return ""; } }
接口 | 描述 | 参数 | 详情 |
---|---|---|---|
Dec.Plugin.tabPane.addItem | tabPane 添加一个tab | (cardTitle,cardValue,cardType) | 展示名,value,cardType 可以为fineui注册组件字符串,也可以为对象{src:"baidu.com"} |
Dec.Plugin.tabPane.closeActiveTab | 关闭当前激活的tab | ||
Dec.Plugin.tabPane.openTab | 打开一个目录节点到tabPane | (entry) | 将请求取到目录树节点的对象传进去即可 |
Dec.Plugin.Menus.addItem | 向侧栏menus加一个按钮 | (op) | 参数对象结构 { value: "dashboard", // 值 } |
名称 | 描述 |
---|---|
DecCst.DIRECTORY_TREE_ROOT_ID | 目录根节点 |
{ theme: { name: "default", // 框架布局配置属性 config4Frame: { // 上区域 north: { height: 40, // 上方导航栏高度设置 invisible: false // 是否不可见 }, // 左区域 west: { width: 70, // 宽度 默认70 invisible: false // 是否不可见 }, // 右区域 east: { invisible: false // 是否不可见 } }, // Header配置属性 config4Header: {}, // menu组件配置属性 config4Menu: { invisible: false, // 是否不可见 }, // 目录面板组件配置属性 config4EntryPane: { pinable: true // 是否支持固定 }, // 管理系统面板组件配置属性 config4ModulesPane: { pinable: true, // 是否支持固定 showHomepage: true } } }
注入布局策略>注入组件>实现相关组件.
// 注入布局方式,10.0平台默认用上+下(左+右)结构,只用到了header,menu,body Dec.injection.injectLayoutStrategy({ layout: function (config4Frame, header, footer, menu, body) { } }) Dec.injection.injectHeader({ widget: function () { return { type: "dec.header", height: 60 }; } }); Dec.injection.injectFooter({ widget: function () { } }); Dec.injection.injectMenu({ widget: function (config) { return { type: "dec.menu", invisible: config.invisible }; } }); Dec.injection.injectBody({ widget: function () { return { type: "dec.body" }; } }); // 示例中注册了 dec.workbench.directory 即目录树组件为新的 目录和管理系统节点合并的树组件 BI.Plugin.registerWidget("dec.workbench.directory", function (ob) { return BI.extend(ob, {type: "dec.theme.modules"}); });
// 继承BI.Widget 在组件的render方法中将react组件放入 !(function () { var Widget = BI.inherit(BI.Widget, { props: { cls: "dec-demo" }, render: function () { ReactDOM.render(<MyComponent/>, this.element[0]); } }); BI.shortcut("dec.demo", Widget); })();
// 继承BI.Widget 在组件的render方法中创建一个widget挂载 !(function () { var Widget = BI.inherit(BI.Widget, { props: { cls: "dec-demo" }, render: function () { var component = BI.createWidget({ type: "bi.layout", element: "<div>dec-demo</div>" }); return { type: "bi.default", items: [component] }; } }); BI.shortcut("dec.demo", Widget); })(); // render方法也可以这样写 render: function () { var component = $("<div>dec-demo</div>"); this.element.append(component); }
Dec.platformStyles.customColors=[
"#FFFFFF", "#4B7EFE", "#2C3D59", "#F2F6FA", "#FFFFFF", "#3D4D66"
]