废弃YJ.Smart.initUI的钩子函数
YJ.Smart.initUI有关钩子函数请使用控件的扩展属性和控件的聚合类来代替。
例如:原来旧的启动录制功能的功能
(function(){
var YJ = window.YJ;
YJ.defClass("com.cloudres.logic.ScheduleInd",YJ.Sys.Object,function(){
YJ.addFunction(YJ.Smart.initUI,"grid",function(ele){
var ref=ele.getAttribute("refExtend")
if(!ref || ref.indexOf("com.cloudres.logic.ScheduleInd")==-1) return;
var self = this;
var busObj = YJ.CURBUSOBJ;
var m=busObj.getLogicStructure("com.cloudres.logic.ScheduleInd",this.getControlDatObj());
if(!m) return;
YJ.inherit(false,self,"scheduleInd",function(event,element){
busObj.involeOtherMethod(this.getControlDatObj()+".scheduleInd");
});
var text = '<button objectid="'+ele.id+
'" class="{#enableclass} btn btn-xs btn-primary" type="button"'+
'onclick="YJ(this,event,\'scheduleInd\')">{#enable}</button>';
self.getScheduleIndButton = function(br){
if(!br) return "";
var str='启用按课程表录制';
var cs ="";
if(br.get(m.enableField)==m.enableInd){
str = '取消按课程表录制';
cs="resetTop";
}
var t= String(text).replace("{#enable}",str);
return String(t).replace("{#enableclass}",cs);
}
})
},null,true)
})()
用聚合类来代替如下:
例如:原来旧的启动录制功能的功能
var YJ = window.YJ;
YJ.defClass("ScheduleInd",YJ.Sys.Object,function(){
var o = this.prototype;
o.init = function(ele,ctrl){
var busObj = YJ.CURBUSOBJ,datObj = ele.getAttribute("datObj");
if(!busObj || !datObj) return;
var m=busObj.getLogicStructure("com.cloudres.logic.ScheduleInd",datObj);
if(!m) return;
YJ.inherit(false,ctrl,"scheduleInd",function(event,element){
busObj.involeOtherMethod(datObj+".scheduleInd");
});
var text = '<button objectid="'+ele.id+
'" class="{#enableclass} btn btn-xs btn-primary" type="button"'+
' onclick="YJ(this,event,\'scheduleInd\')">{#enable}</button>';
ctrl.getScheduleIndButton = function(br){
if(!br) return "";
var str='启用按课程表录制';
var cs ="";
if(br.get(m.enableField)==m.enableInd){
str = '取消按课程表录制';
cs="resetTop";
}
var t= String(text).replace("{#enable}",str);
return String(t).replace("{#enableclass}",cs);
}
}
})