jeecgboot修改登录界面、背景图等的页面记录
jeecgboot修改登录界面、背景图等的页面记录页面及对应操作一、pandas是什么?二、使用步骤1.引入库2.读入数据总结页面及对应操作userLayout.vue: 可修改登录背景图、标题、下方文字连接login.vue: 登录模块的相应设index.html: 可修改页面在浏览器中标签页的名称,以及全局配置logo.vue: 可修改对应的logo,有logo路径一、pandas是什么?示例
jeecgboot修改登录界面、背景图等
页面及对应操作
userLayout.vue: 可修改登录背景图、标题、下方文字连接
login.vue: 登录模块的相应设
index.html: 可修改页面在浏览器中标签页的名称、logo,以及全局配置
logo.vue: 可修改对应的logo,有logo路径,还有项目标题
GlobalHeader.vue: 修改头部样式
GlobalFooter.vue: 修改底部样式
TabLayout: 修改进入系统后,浏览器标签页名称,
shiroconfig: 用于在未登录系统时,就可以执行一些请求(拦截器释放请求)
前端页面疑难杂症
1.实现按某一字段排序: list 页面使用
/* 排序参数 */
isorter:{
column: ‘titleSort’,
order: ‘asc’,
},
在data(){return{}}中存放;
2.实现字段的省略:
在字段中添加属性
、
3.实现list页面点击某一字段,实现正序倒序切换;
sorter: (a, b) => a.keyTaskSupervisionSort - b.keyTaskSupervisionSort,
代码如下:
{
title:'督办排序',
align:"center",
dataIndex: 'keyTaskSupervisionSort',
width:100,
sorter: (a, b) => a.keyTaskSupervisionSort - b.keyTaskSupervisionSort,
},
4.输入框添加自定义校验
level2Category: {
rules: [
{ required: true, message: '请输入二级类别!'},
{ validator: this.validateTemplateCode}
]
},
validateTemplateCode(rule, value, callback){
getAction("/yc/titleManagement/queryById",{id:value}).then((res)=>{
console.log("表单",this.form)
if(res.result.titleType != 2){
callback("只能为二级标题添加任务");
}else{
callback();
}
})
},
5下拉框默认选择
在校验规则中添加:
v-decorator="[ 'equipmentType', {initialValue:this.defaultType,rules: validatorRules.equipmentType.rules}]"
在data(){return{ }}中写入 defaultType的值;
data () {
return {
defaultType:'1',
}
6刷新vue页面中某一组件
为某一组件绑定key值,当key值发生改变时,该组件会重新刷新。
//组件
<j-dict-select-tag :key="reLoadModul" type="list" v-decorator="['equipmentId', validatorRules.equipmentId]" :trigger-change="true" dictCode="pre_equipment_management,equipment_code,id,pre_equipment_management.id NOT IN (SELECT equipment_id FROM collecter_equipment_address )" placeholder="请选择设备id"/>
//methods中 调用该方法后,该组件重新加载
add () {
this.reLoadModul += 1;
this.edit({});
},
7导出时,数据按某个字段排序
在导出方法中的param处指定order、column两个属性
handleExportXls_person(fileName){
if(!fileName || typeof fileName != "string"){
fileName = "导出文件"
}else{
fileName = this.value + fileName;
}
let param = {...this.queryParam};
if(this.selectedRowKeys && this.selectedRowKeys.length>0){
param['selections'] = this.selectedRowKeys.join(",")
}
console.log("导出参数",param)
param.order = 'asc'; //此处指定排序方式
param.column = 'month'; //此处指定按什么字段
downFile(this.url.exportXlsUrl,param).then((data)=>{
if (!data) {
this.$message.warning("文件下载失败")
return
}
if (typeof window.navigator.msSaveBlob !== 'undefined') {
window.navigator.msSaveBlob(new Blob([data],{type: 'application/vnd.ms-excel'}), fileName+'.xls')
}else{
let url = window.URL.createObjectURL(new Blob([data],{type: 'application/vnd.ms-excel'}))
let link = document.createElement('a')
link.style.display = 'none'
link.href = url
link.setAttribute('download', fileName+'.xls')
document.body.appendChild(link)
link.click()
document.body.removeChild(link); //下载完成移除元素
window.URL.revokeObjectURL(url); //释放掉blob对象
}
})
},//导出方法
后端疑难杂症
1.queryWrapper中时间的比较:
String time= DateFormatUtils.format(new
Date(),“yyyy-MM-dd HH:mm:ss”);//当前时间
queryWrapper.apply(“UNIX_TIMESTAMP(end_time) >= UNIX_TIMESTAMP('” + time + “')”);
2.实体类中使用非数据库的字段
@TableField(exist = false) //非数据库字段
private java.lang.String appearTime;
更多推荐
所有评论(0)