④内部公开请勿外传金蝶云苍穹自定义控件使用1.简介自定义控件,顾名思义即是用户可以自己开发业务组件。苍穹本身提供比较丰富的常用控件,业务组件,特殊业务场景下,系统提供的业务组件无法满足需求。例如需要使用甘特图,高德地图等系统内本身没有的组件,此时通过自定义组件,按照苍穹自定义组建的标准,封装好自定义组件,即可把这些组件引入到系统中。自定义组件也有特定的JAVA插件事件,在表单插件中可以轻松获取到。2自定义组件的封装(此处以高德地图的封装为例)2.1标准自定义组件构成index.js文件控件的首页JS,此JS需严格按照苍穹标准编写,提供完整的控件生命周期管理。如下为一个标准的最简单的index.js文件。默认包含_setModel,init,update,destoryed事件,开发人员可基于这些事件扩展自己的逻辑,加载资源图片文件,KDApi.register('avatar_map',MyComponent)这句代码将注册一个ID为avatar_map控件,此ID将和后面的方案ID一致。(function(KDApi,$){functionMyComponent(model){1/9④内部公开请勿外传this._setModel(model);}MyComponent.prototype={_setModel:function(model){this.model=model;},init:function(props){console.log('-----init',this.model,props);},update:function(props){console.log('-----update',this.model,props)},destoryed:function(){console.log('-----destoryed',this.model)}}KDApi.register('avatar_map',MyComponent)})(window.KDApi,jQuery);Css样式文件文件存放本控件需要使用的样式文件。样式文件的加载一般样式文件会在init事件中加载,苍穹前端提供加载本地CSS样式文件接口。此处和HTML片段一起演示加载。控件HTML片段本自定义控件的HTML片段,常为div,input,table等标签,不支持