组件类回调事件

/**
 * 按钮操作类型:打开弹窗
 * 关闭后回调
 * function widgetIdDialogClose(dialogData){}
 * @param id string: 组件id
 * @param dialogData object: 表单数据
 */
try {
    if (typeof eval(id + "DialogClose") === "function") {
        var dialogData = data;
        eval(id + "DialogClose( dialogData )");
    }
} catch (ex) {
    console.log("可能未定义关闭弹窗回调事件" + id + "DialogClose,请忽略~");
}

/**
 * 按钮操作类型:不做操作
 * 不做任何操作回调
 * function widgetIdClickNone(){}
 * @param id string: 组件id
 */
try {
    if (typeof eval(id + "ClickNone") === "function") {
        eval(id + "ClickNone()");
    }
} catch (ex) {
    console.log("可能未自定义点击事件" + id + "ClickNone,请忽略~");
}
/*********************************************************************** 组件类--按钮回调事件--end */



/**
 * 服务或模型获取数据后数据处理回调
 * function widgetIdHandleData(res){}
 * @param _config.id string: 组件id
 */
try {
    if (typeof eval(_config.id + "HandleData") === "function") {
        res = eval(_config.id + "HandleData(res)");
    }
} catch (ex) {
    console.log("可能未定义选择列表组件数据处理回调事件" + _config.id + "HandleData,请忽略~");
}

/**
 * 点击checkbox|radio回调
 * function widgetIdChange(this){}
 * @param _config.id string: 组件id
 */
try {
    if (typeof eval(_config.id + "Change") == "function") {
        eval(_config.id + "Change(this,_config.selectData)")
    }
} catch (ex) {
    console.log("可能未定义值改变回调事件" + _config.id + "Change,请忽略~");
}

/**
 * 选择列表组件初始化后回调
 * function widgetIdInited(data){}
 * @param _config.id string: 组件id
 * @param _config.selectData array: 下拉数据
 */
try {
    if (typeof eval(_config.id + "Inited") == "function") {
        eval(_config.id + "Inited(_config.selectData)")
    }
} catch (ex) {
    console.log("可能未定义选择列表组件初始化后回调事件" + _config.id + "Inited,请忽略~");
}
/*********************************************************************** 组件类--选择列表回调事件--end */



/**
 * 处理用于生成的模板的列表数据 
 * function buiListAddDataFun(data){}
 * @param data array: 请求到的列表数据
 */
var _list = bui.list({
    id: "#${id}",
    children: ".bui-listview",
    handle: "li",
    height: _config.height,
    timeout: _config.timeout,
    url: _config.url,
    localData: _config.localData,
    pageSize: _config.pageSize,
    data: _config.params,
    method: _config.method,
    headers: _config.headers,
    field: _fieldParam,
    page: _config.page,
    refresh: _config.refresh,
    template: function (data) {
        if(typeof buiListAddDataFun === "function"){
            eval( buiListAddDataFun(data) );
        }
        var html = template("${id}_template", { data: data });
        return html;
    }
})

/**
 * 列表初始化后回调 
 * function widgetIdInited(){}
 * @param _config.id string: 组件id
 */
try {
    if (typeof eval(_config.id + "Inited") == "function") {
        eval(_config.id + "Inited()")
    }
} catch (ex) {
    console.log("可能未定义列表初始化后回调事件" + _config.id + "Inited,请忽略~");
}
/*********************************************************************** 组件类--列表回调事件--end */



/**
 * 折线图请求数据后处理数据回调
 * function widgetIdCallback(res){}
 * @param config.id string: 组件id
 * @param res array: 请求到图表数据
 */
AppUtils.ajaxGet(config.url,{},{}).then(function(res){
    if(res){
        try {
            if(typeof eval(config.id+"HandleData") === "function"){
                eval(config.id+"HandleData(res)");
            }
        } catch (ex) {
            console.log("可能未定义图表接口数据处理回调事件" + _config.id + "HandleData,请忽略~");
        }
        if(!(res instanceof Array) && config.dataConfig.dataKey){
            res = res[config.dataConfig.dataKey];
        }
        for(var i = 0; i < res.length; i++ ){
            axisData.push(res[i][config.dataConfig.name]);
            data.push(res[i][config.dataConfig.value]);
        }
        _init();
    }
})
/*********************************************************************** 组件类--数据处理回调事件--end */



/**
 * 跳转前触发、初始化前触发、初始化以后触发、每次跳转时触发 
 * function _widgetIdBeforeTo(){}
 * @param _config.id string: 组件id
 */
var uiTab = bui.tab({
    id: tabId,
    menu: menuId,
    index: config.index,
    height: config.height,
    onBeforeTo: function () {
        console.log(config.id + "BeforeTo");
        try {
            if (typeof eval(config.id + "BeforeTo") == "function") {
                eval(config.id + "BeforeTo()")
            }
        } catch (ex) {
            console.log("可能未定义Tab控件BeforeTo事件:" + config.id + "BeforeTo");
        }
    },
    onBeforeInit: function () {
        console.log(config.id + "BeforeInit");
        try {
            if (typeof eval(config.id + "BeforeInit") == "function") {
                eval(config.id + "BeforeInit()")
            }
        } catch (ex) {
            console.log("可能未定义Tab控件BeforeInit事件:" + config.id + "BeforeInit");
        }
    },
    onInited: function () {
        console.log(config.id + "Inited");
        try {
            if (typeof eval(config.id + "Inited") == "function") {
                eval(config.id + "Inited()")
            }
        } catch (ex) {
            console.log("可能未定义Tab控件Inited事件:" + config.id + "Inited");
        }
    }
});
/*********************************************************************** 组件类--选项卡回调事件--end */



/**
 * 关闭用户选择弹窗 
 * function widgetIdUserChoose(){}
 * @param config.id string: 组件id
 */
close: function () {
    try {
        if (typeof eval(config.id + "UserChoose") == "function") {
            eval(config.id + "UserChoose()")
        }
    }catch (ex) {
        console.log("可能未定义该控件关闭回调事件:" + config.id + "UserChoose()");
    }
    uiDialog.close();
    uiDialog.remove();
}
/*********************************************************************** 组件类--用户选择关闭回调事件--end */



/**
 * 日期选择确定按钮回调
 * function widgetIdSure(){}
 * @param _config.id string: 组件id
 */
try {
    if(typeof eval(_config.id+"Sure") === "function"){
        eval(_config.id+"Sure()")
    }
} catch (ex) {
    console.log("可能未定义日期组件确定按钮回调事件" + _config.id + "Sure,请忽略~");
}
/*********************************************************************** 组件类--日期选择组件回调事件--end */