1、ng-alain其中的 st 表格,有STColumnButtonDrawer(抽屉)和STColumnButtonModal(模态框)传值问题:
如列表内容太多,列表一行无法显示,点击一个按钮,出来一个抽屉,抽屉里面是这一行的全部内容,
columns: STColumn[] = [
{
title: '操作',//表头名字
index: 'operate ',
buttons: [
{
text: '查看全部',//按钮名字
type: 'drawer',
drawer: {
title: '编辑',
component: DrawerComponent,
},
}]
},
]
在DrawerComponent的ts文件里面,只需要定义一个
reword:any;
这个reword就是对应这一行的全部数据
2、若要在前端的 st 表格直接实现排序功能,一句即可:
compare: (a, b) => (a.createTime < b.createTime ? -1 : a.createTime > b.createTime ? 1 : 0),
{ title: '时间', index: 'time', type: 'date',
sort: {
compare: (a, b) => (a.time < b.time? -1 : a.time > b.time ? 1 : 0),
},
},
3、关于这个时间,在 sf 表单里面,有时候需要限制时间,如不能选择今天以前,或者今天以后的时间,也很简单的一句话:
showTime: false,
disabledDate: (current: Date) => {
return differenceInCalendarDays(current, this.time) > 0;
},
showTime: 是不显示哪些时间,若是不加,做限制的时间不能选择,但是可以显示
大于(>)0是今天以后的时间
小于(>)0是今天以前的时间
format可以限制时间的格式
import { differenceInCalendarDays } from 'date-fns';
time = new Date(); // 当前时间
Stime: {
type: 'string',
title: '时间',
ui: {
widget: 'date',
format: 'YYYY-MM-DD',
showTime: false,
disabledDate: (current: Date) => {
return differenceInCalendarDays(current, this.time) > 0;
},
}
},
4、关于st表格的badge 徽标用法:
BADGE: STColumnBadge = {
0: { text: '未读', color: 'error' },
1: { text: '已读', color: 'success' },
};
columns: STColumn[] = [
{ title: '状态', index: 'Mstate', type: 'badge', badge: this.BADGE, },
]