【仅供内部供应商使用,不提供对外解答和培训】
【仅供内部供应商使用,不提供对外解答和培训】
首先,Fine-Decision 决策平台前端采用帆软内部开源框架 fineui 开发,在进行拓展开发的时候希望你能够对 FineUI 有一个基础的了解
http://fanruan.coding.me/fineui-doc/#/docs/learn/install
首先,我们通过继承超类 BI.Widget 定义了一个组件,然后用 BI.shortcut 生命一个唯一名字标识它. 最后通过 BI.createWidget 方法创建一个组件实例.
var Widget = BI.inherit(BI.Widget, { props: { baseCls: "my-first-widget" }, render: function () { return { type: "bi.label", text: "this is my first widget" }; }, sayHello: function () { console.log("hello"); } }); BI.shortcut("my.first_widget", Widget); BI.createWidget({ type: "my.first_widget", element: "#app" });
如何获取一个组件的引用呢?有两种方法,一种是 BI.createWidget 方法会返回组件的引用,另一种是通过 ref 的形式获取.和 React很相似
var Widget = BI.inherit(BI.Widget, { props: { baseCls: "my-second-widget" }, render: function () { var self = this; this.widget1 = BI.createWidget({ type: "my.first_widget" }); var jsonObj = { type: "my.first_widget", ref: function (_ref) { self.widget2 = _ref; } }; return { type: "bi.vertical", items: [ this.widget1, jsonObj ] }; } }); BI.shortcut("my.second_widget", Widget); var secondWidget = BI.createWidget({ type: "my.second_widget", element: "#app" }); secondWidget.widget1.sayHello(); secondWidget.widget2.sayHello();
后端的支持可以参考 ThemeVariousProvider接口,建议利用js代码concat工具将插件代码合并为一个文件。
决策平台内置提供Jquery 1.9.1 版本。如要引入其他版本请注意noConflict
引入其他javascript资源的方法
BI.$import("/webroot/decision/file?path=/com/fr/web/socketio/dist/cunstom.js");
1 Comment
Anonymous
文档地址没用